#include "psprecomp/runtime.hpp" #include "generated_units.hpp" #include "vcs_resident_regions.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_0185[64] = { 0x1200820480201825ull, 0x1049120082240400ull, 0xA404142210000240ull, 0x0824890041024010ull, 0x25090010A4041120ull, 0x2020004020402805ull, 0x208900429010A551ull, 0x8AD2224002080140ull, 0x2224002030480A01ull, 0x156480818240500Dull, 0x6850A48002000041ull, 0x48020010B282D155ull, 0x0004021024004144ull, 0x0432404028100080ull, 0x9010609014034490ull, 0x014028480890010Cull, 0x4408284822400408ull, 0x2D0A142010000815ull, 0x2240412401000868ull, 0x30480A01A1200844ull, 0x020C120280612008ull, 0x1200830480A01848ull, 0x01848020C1202806ull, 0x028061200830480Aull, 0x4000202240020C12ull, 0x850A900400004020ull, 0x9492001000859416ull, 0x0842240024002022ull, 0x0040000802108421ull, 0x0010401200800009ull, 0x44406A2000000480ull, 0x00401448A2451209ull, 0x9008210000012008ull, 0x2004000004100800ull, 0x85941688555A1429ull, 0x4808211082402000ull, 0x0900041244802112ull, 0x140309004020A420ull, 0x0900100240106090ull, 0x0240008248900408ull, 0x142850A14208848Aull, 0x00442850A142850Aull, 0x0830480A01104802ull, 0x0000004000112020ull, 0x1008008004002001ull, 0x0028922204440880ull, 0x2204400800001220ull, 0x0009100014491102ull, 0x0824004082400400ull, 0x8848008104424004ull, 0x4802088921201020ull, 0x1290010480820004ull, 0x022A8129001022A8ull, 0x4000120080002401ull, 0x0081094800800900ull, 0x0409010002488108ull, 0x0248021240400090ull, 0x80A0124010609014ull, 0x0480080012008304ull, 0x042A404081054000ull, 0x800D000202008900ull, 0x8954110200502008ull, 0x0402A05012A0540Aull, 0x02A4202892280000ull, }; static constexpr std::uint16_t kEntryBases_recomp_unit_0185[64] = { 1u, 13u, 24u, 35u, 46u, 59u, 68u, 84u, 98u, 110u, 127u, 139u, 157u, 166u, 176u, 191u, 203u, 215u, 229u, 241u, 255u, 267u, 280u, 293u, 306u, 316u, 326u, 342u, 352u, 360u, 367u, 377u, 392u, 400u, 405u, 429u, 439u, 451u, 463u, 473u, 483u, 500u, 516u, 528u, 533u, 539u, 551u, 559u, 570u, 578u, 589u, 601u, 611u, 626u, 633u, 642u, 652u, 662u, 675u, 684u, 695u, 704u, 717u, 732u, }; void recomp_unit_0185_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,16,29,31,17 fprs=12,20,13,14 gpr_occ=4560 fpr_occ=367 gpr_total=6063 fpr_total=520 std::uint32_t aot_gpr_4 = ctx.gpr[4]; std::uint32_t aot_gpr_5 = ctx.gpr[5]; std::uint32_t aot_gpr_16 = ctx.gpr[16]; std::uint32_t aot_gpr_29 = ctx.gpr[29]; std::uint32_t aot_gpr_31 = ctx.gpr[31]; std::uint32_t aot_gpr_17 = ctx.gpr[17]; float aot_fpr_12 = ctx.fpr[12]; float aot_fpr_20 = ctx.fpr[20]; float aot_fpr_13 = ctx.fpr[13]; float aot_fpr_14 = ctx.fpr[14]; 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[16] = aot_gpr_16; ctx.gpr[29] = aot_gpr_29; ctx.gpr[31] = aot_gpr_31; ctx.gpr[17] = aot_gpr_17; ctx.fpr[12] = aot_fpr_12; ctx.fpr[20] = aot_fpr_20; ctx.fpr[13] = aot_fpr_13; ctx.fpr[14] = aot_fpr_14; } } 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_16 = ctx.gpr[16]; aot_gpr_29 = ctx.gpr[29]; aot_gpr_31 = ctx.gpr[31]; aot_gpr_17 = ctx.gpr[17]; aot_fpr_12 = ctx.fpr[12]; aot_fpr_20 = ctx.fpr[20]; aot_fpr_13 = ctx.fpr[13]; aot_fpr_14 = ctx.fpr[14]; } } 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 - 0x08AE8000u; entry_id = 0u; if (entry_delta < 16360u && (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_0185[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_0185[entry_group] + std::popcount(entry_mask & (entry_bit - 1ull))); } } } switch (entry_id) { case 1u: goto L_08AE8000; case 2u: goto L_08AE8008; case 3u: goto L_08AE8014; case 4u: goto L_08AE802C; case 5u: goto L_08AE8030; case 6u: goto L_08AE8054; case 7u: goto L_08AE807C; case 8u: goto L_08AE8088; case 9u: goto L_08AE80A4; case 10u: goto L_08AE80BC; case 11u: goto L_08AE80E4; case 12u: goto L_08AE80F0; case 13u: goto L_08AE8128; case 14u: goto L_08AE8148; case 15u: goto L_08AE8154; case 16u: goto L_08AE8164; case 17u: goto L_08AE817C; case 18u: goto L_08AE81A4; case 19u: goto L_08AE81B0; case 20u: goto L_08AE81C0; case 21u: goto L_08AE81CC; case 22u: goto L_08AE81D8; case 23u: goto L_08AE81F0; case 24u: goto L_08AE8218; case 25u: goto L_08AE8224; case 26u: goto L_08AE8270; case 27u: goto L_08AE8284; case 28u: goto L_08AE8294; case 29u: goto L_08AE82A8; case 30u: goto L_08AE82B0; case 31u: goto L_08AE82C8; case 32u: goto L_08AE82E8; case 33u: goto L_08AE82F4; case 34u: goto L_08AE82FC; case 35u: goto L_08AE8310; case 36u: goto L_08AE8338; case 37u: goto L_08AE8344; case 38u: goto L_08AE8360; case 39u: goto L_08AE8378; case 40u: goto L_08AE83A0; case 41u: goto L_08AE83AC; case 42u: goto L_08AE83BC; case 43u: goto L_08AE83C8; case 44u: goto L_08AE83D4; case 45u: goto L_08AE83EC; case 46u: goto L_08AE8414; case 47u: goto L_08AE8420; case 48u: goto L_08AE8430; case 49u: goto L_08AE8448; case 50u: goto L_08AE8468; case 51u: goto L_08AE8474; case 52u: goto L_08AE847C; case 53u: goto L_08AE8490; case 54u: goto L_08AE84C0; case 55u: goto L_08AE84CC; case 56u: goto L_08AE84E0; case 57u: goto L_08AE84E8; case 58u: goto L_08AE84F4; case 59u: goto L_08AE8500; case 60u: goto L_08AE8508; case 61u: goto L_08AE852C; case 62u: goto L_08AE8534; case 63u: goto L_08AE8558; case 64u: goto L_08AE8574; case 65u: goto L_08AE8598; case 66u: goto L_08AE85D4; case 67u: goto L_08AE85F4; case 68u: goto L_08AE8600; case 69u: goto L_08AE8610; case 70u: goto L_08AE8618; case 71u: goto L_08AE8620; case 72u: goto L_08AE8628; case 73u: goto L_08AE8634; case 74u: goto L_08AE863C; case 75u: goto L_08AE8650; case 76u: goto L_08AE8670; case 77u: goto L_08AE867C; case 78u: goto L_08AE8684; case 79u: goto L_08AE8698; case 80u: goto L_08AE86C0; case 81u: goto L_08AE86CC; case 82u: goto L_08AE86DC; case 83u: goto L_08AE86F4; case 84u: goto L_08AE8718; case 85u: goto L_08AE8720; case 86u: goto L_08AE874C; case 87u: goto L_08AE8764; case 88u: goto L_08AE8798; case 89u: goto L_08AE87A4; case 90u: goto L_08AE87B4; case 91u: goto L_08AE87C4; case 92u: goto L_08AE87D0; case 93u: goto L_08AE87D8; case 94u: goto L_08AE87DC; case 95u: goto L_08AE87E4; case 96u: goto L_08AE87EC; case 97u: goto L_08AE87FC; case 98u: goto L_08AE8800; case 99u: goto L_08AE8824; case 100u: goto L_08AE882C; case 101u: goto L_08AE884C; case 102u: goto L_08AE8858; case 103u: goto L_08AE8870; case 104u: goto L_08AE8874; case 105u: goto L_08AE8894; case 106u: goto L_08AE88C8; case 107u: goto L_08AE88D4; case 108u: goto L_08AE88E4; case 109u: goto L_08AE88F4; case 110u: goto L_08AE8900; case 111u: goto L_08AE8908; case 112u: goto L_08AE890C; case 113u: goto L_08AE8930; case 114u: goto L_08AE8938; case 115u: goto L_08AE8958; case 116u: goto L_08AE8964; case 117u: goto L_08AE897C; case 118u: goto L_08AE8980; case 119u: goto L_08AE899C; case 120u: goto L_08AE89BC; case 121u: goto L_08AE89C8; case 122u: goto L_08AE89D4; case 123u: goto L_08AE89D8; case 124u: goto L_08AE89E0; case 125u: goto L_08AE89E8; case 126u: goto L_08AE89F0; case 127u: goto L_08AE8A00; case 128u: goto L_08AE8A18; case 129u: goto L_08AE8A64; case 130u: goto L_08AE8A9C; case 131u: goto L_08AE8AA8; case 132u: goto L_08AE8AB4; case 133u: goto L_08AE8ABC; case 134u: goto L_08AE8AD0; case 135u: goto L_08AE8AD8; case 136u: goto L_08AE8AEC; case 137u: goto L_08AE8AF4; case 138u: goto L_08AE8AF8; case 139u: goto L_08AE8B00; case 140u: goto L_08AE8B08; case 141u: goto L_08AE8B10; case 142u: goto L_08AE8B18; case 143u: goto L_08AE8B20; case 144u: goto L_08AE8B30; case 145u: goto L_08AE8B38; case 146u: goto L_08AE8B3C; case 147u: goto L_08AE8B44; case 148u: goto L_08AE8B5C; case 149u: goto L_08AE8B64; case 150u: goto L_08AE8B70; case 151u: goto L_08AE8B74; case 152u: goto L_08AE8B7C; case 153u: goto L_08AE8B90; case 154u: goto L_08AE8BC4; case 155u: goto L_08AE8BEC; case 156u: goto L_08AE8BF8; case 157u: goto L_08AE8C08; case 158u: goto L_08AE8C18; case 159u: goto L_08AE8C20; case 160u: goto L_08AE8C38; case 161u: goto L_08AE8C68; case 162u: goto L_08AE8C74; case 163u: goto L_08AE8C90; case 164u: goto L_08AE8CA4; case 165u: goto L_08AE8CC8; case 166u: goto L_08AE8D1C; case 167u: goto L_08AE8D50; case 168u: goto L_08AE8D6C; case 169u: goto L_08AE8D74; case 170u: goto L_08AE8D98; case 171u: goto L_08AE8DB8; case 172u: goto L_08AE8DC4; case 173u: goto L_08AE8DD0; case 174u: goto L_08AE8DD4; case 175u: goto L_08AE8DE8; case 176u: goto L_08AE8E10; case 177u: goto L_08AE8E1C; case 178u: goto L_08AE8E28; case 179u: goto L_08AE8E38; case 180u: goto L_08AE8E40; case 181u: goto L_08AE8E44; case 182u: goto L_08AE8E68; case 183u: goto L_08AE8E70; case 184u: goto L_08AE8E90; case 185u: goto L_08AE8E9C; case 186u: goto L_08AE8EB4; case 187u: goto L_08AE8EB8; case 188u: goto L_08AE8ED0; case 189u: goto L_08AE8EF0; case 190u: goto L_08AE8EFC; case 191u: goto L_08AE8F08; case 192u: goto L_08AE8F0C; case 193u: goto L_08AE8F20; case 194u: goto L_08AE8F50; case 195u: goto L_08AE8F5C; case 196u: goto L_08AE8F6C; case 197u: goto L_08AE8F8C; case 198u: goto L_08AE8F98; case 199u: goto L_08AE8FAC; case 200u: goto L_08AE8FB4; case 201u: goto L_08AE8FD8; case 202u: goto L_08AE8FE0; case 203u: goto L_08AE900C; case 204u: goto L_08AE9028; case 205u: goto L_08AE9058; case 206u: goto L_08AE9064; case 207u: goto L_08AE9074; case 208u: goto L_08AE908C; case 209u: goto L_08AE9098; case 210u: goto L_08AE90AC; case 211u: goto L_08AE90B4; case 212u: goto L_08AE90CC; case 213u: goto L_08AE90E8; case 214u: goto L_08AE90F8; case 215u: goto L_08AE9100; case 216u: goto L_08AE9108; case 217u: goto L_08AE9110; case 218u: goto L_08AE912C; case 219u: goto L_08AE9170; case 220u: goto L_08AE9194; case 221u: goto L_08AE91A8; case 222u: goto L_08AE91B0; case 223u: goto L_08AE91C4; case 224u: goto L_08AE91CC; case 225u: goto L_08AE91E0; case 226u: goto L_08AE91E8; case 227u: goto L_08AE91EC; case 228u: goto L_08AE91F4; case 229u: goto L_08AE920C; case 230u: goto L_08AE9214; case 231u: goto L_08AE9218; case 232u: goto L_08AE922C; case 233u: goto L_08AE9260; case 234u: goto L_08AE9288; case 235u: goto L_08AE9294; case 236u: goto L_08AE92A0; case 237u: goto L_08AE92B8; case 238u: goto L_08AE92D8; case 239u: goto L_08AE92E4; case 240u: goto L_08AE92F4; case 241u: goto L_08AE9308; case 242u: goto L_08AE9318; case 243u: goto L_08AE932C; case 244u: goto L_08AE9354; case 245u: goto L_08AE9360; case 246u: goto L_08AE9374; case 247u: goto L_08AE937C; case 248u: goto L_08AE9380; case 249u: goto L_08AE93A4; case 250u: goto L_08AE93AC; case 251u: goto L_08AE93CC; case 252u: goto L_08AE93D8; case 253u: goto L_08AE93F0; case 254u: goto L_08AE93F4; case 255u: goto L_08AE940C; case 256u: goto L_08AE9434; case 257u: goto L_08AE9440; case 258u: goto L_08AE9454; case 259u: goto L_08AE9458; case 260u: goto L_08AE947C; case 261u: goto L_08AE9484; case 262u: goto L_08AE94A4; case 263u: goto L_08AE94B0; case 264u: goto L_08AE94C8; case 265u: goto L_08AE94CC; case 266u: goto L_08AE94E4; case 267u: goto L_08AE950C; case 268u: goto L_08AE9518; case 269u: goto L_08AE952C; case 270u: goto L_08AE9530; case 271u: goto L_08AE9554; case 272u: goto L_08AE955C; case 273u: goto L_08AE957C; case 274u: goto L_08AE9588; case 275u: goto L_08AE95A0; case 276u: goto L_08AE95A4; case 277u: goto L_08AE95BC; case 278u: goto L_08AE95E4; case 279u: goto L_08AE95F0; case 280u: goto L_08AE9604; case 281u: goto L_08AE9608; case 282u: goto L_08AE962C; case 283u: goto L_08AE9634; case 284u: goto L_08AE9654; case 285u: goto L_08AE9660; case 286u: goto L_08AE9678; case 287u: goto L_08AE967C; case 288u: goto L_08AE9694; case 289u: goto L_08AE96BC; case 290u: goto L_08AE96C8; case 291u: goto L_08AE96DC; case 292u: goto L_08AE96E0; case 293u: goto L_08AE9704; case 294u: goto L_08AE970C; case 295u: goto L_08AE972C; case 296u: goto L_08AE9738; case 297u: goto L_08AE9750; case 298u: goto L_08AE9754; case 299u: goto L_08AE976C; case 300u: goto L_08AE9794; case 301u: goto L_08AE97A0; case 302u: goto L_08AE97B4; case 303u: goto L_08AE97B8; case 304u: goto L_08AE97DC; case 305u: goto L_08AE97E4; case 306u: goto L_08AE9804; case 307u: goto L_08AE9810; case 308u: goto L_08AE9828; case 309u: goto L_08AE982C; case 310u: goto L_08AE9844; case 311u: goto L_08AE9878; case 312u: goto L_08AE9884; case 313u: goto L_08AE9894; case 314u: goto L_08AE98B4; case 315u: goto L_08AE98F8; case 316u: goto L_08AE9914; case 317u: goto L_08AE9938; case 318u: goto L_08AE9988; case 319u: goto L_08AE99B0; case 320u: goto L_08AE99BC; case 321u: goto L_08AE99C4; case 322u: goto L_08AE99CC; case 323u: goto L_08AE99E0; case 324u: goto L_08AE99E8; case 325u: goto L_08AE99FC; case 326u: goto L_08AE9A04; case 327u: goto L_08AE9A08; case 328u: goto L_08AE9A10; case 329u: goto L_08AE9A28; case 330u: goto L_08AE9A30; case 331u: goto L_08AE9A3C; case 332u: goto L_08AE9A40; case 333u: goto L_08AE9A48; case 334u: goto L_08AE9A5C; case 335u: goto L_08AE9A90; case 336u: goto L_08AE9AC4; case 337u: goto L_08AE9AD0; case 338u: goto L_08AE9ADC; case 339u: goto L_08AE9AE8; case 340u: goto L_08AE9AF0; case 341u: goto L_08AE9AFC; case 342u: goto L_08AE9B04; case 343u: goto L_08AE9B14; case 344u: goto L_08AE9B34; case 345u: goto L_08AE9B68; case 346u: goto L_08AE9B74; case 347u: goto L_08AE9BA8; case 348u: goto L_08AE9BB4; case 349u: goto L_08AE9BC4; case 350u: goto L_08AE9BD8; case 351u: goto L_08AE9BEC; case 352u: goto L_08AE9C00; case 353u: goto L_08AE9C14; case 354u: goto L_08AE9C28; case 355u: goto L_08AE9C3C; case 356u: goto L_08AE9C50; case 357u: goto L_08AE9C64; case 358u: goto L_08AE9C8C; case 359u: goto L_08AE9CD8; case 360u: goto L_08AE9D00; case 361u: goto L_08AE9D0C; case 362u: goto L_08AE9D5C; case 363u: goto L_08AE9D84; case 364u: goto L_08AE9D90; case 365u: goto L_08AE9DB8; case 366u: goto L_08AE9DD0; case 367u: goto L_08AE9E1C; case 368u: goto L_08AE9E28; case 369u: goto L_08AE9E94; case 370u: goto L_08AE9EA4; case 371u: goto L_08AE9EAC; case 372u: goto L_08AE9EB4; case 373u: goto L_08AE9EB8; case 374u: goto L_08AE9ED8; case 375u: goto L_08AE9EE8; case 376u: goto L_08AE9EF8; case 377u: goto L_08AE9F00; case 378u: goto L_08AE9F0C; case 379u: goto L_08AE9F24; case 380u: goto L_08AE9F30; case 381u: goto L_08AE9F40; case 382u: goto L_08AE9F48; case 383u: goto L_08AE9F58; case 384u: goto L_08AE9F64; case 385u: goto L_08AE9F74; case 386u: goto L_08AE9F7C; case 387u: goto L_08AE9F8C; case 388u: goto L_08AE9F98; case 389u: goto L_08AE9FA8; case 390u: goto L_08AE9FB0; case 391u: goto L_08AE9FD8; case 392u: goto L_08AEA00C; case 393u: goto L_08AEA034; case 394u: goto L_08AEA040; case 395u: goto L_08AEA0A0; case 396u: goto L_08AEA0B4; case 397u: goto L_08AEA0CC; case 398u: goto L_08AEA0F0; case 399u: goto L_08AEA0FC; case 400u: goto L_08AEA12C; case 401u: goto L_08AEA150; case 402u: goto L_08AEA168; case 403u: goto L_08AEA1C8; case 404u: goto L_08AEA1F4; case 405u: goto L_08AEA200; case 406u: goto L_08AEA20C; case 407u: goto L_08AEA214; case 408u: goto L_08AEA228; case 409u: goto L_08AEA230; case 410u: goto L_08AEA244; case 411u: goto L_08AEA24C; case 412u: goto L_08AEA250; case 413u: goto L_08AEA258; case 414u: goto L_08AEA260; case 415u: goto L_08AEA268; case 416u: goto L_08AEA270; case 417u: goto L_08AEA278; case 418u: goto L_08AEA28C; case 419u: goto L_08AEA29C; case 420u: goto L_08AEA2A4; case 421u: goto L_08AEA2A8; case 422u: goto L_08AEA2B0; case 423u: goto L_08AEA2C8; case 424u: goto L_08AEA2D0; case 425u: goto L_08AEA2DC; case 426u: goto L_08AEA2E0; case 427u: goto L_08AEA2E8; case 428u: goto L_08AEA2FC; case 429u: goto L_08AEA334; case 430u: goto L_08AEA358; case 431u: goto L_08AEA364; case 432u: goto L_08AEA37C; case 433u: goto L_08AEA390; case 434u: goto L_08AEA3A0; case 435u: goto L_08AEA3B4; case 436u: goto L_08AEA3CC; case 437u: goto L_08AEA3EC; case 438u: goto L_08AEA3F8; case 439u: goto L_08AEA404; case 440u: goto L_08AEA410; case 441u: goto L_08AEA420; case 442u: goto L_08AEA434; case 443u: goto L_08AEA45C; case 444u: goto L_08AEA468; case 445u: goto L_08AEA478; case 446u: goto L_08AEA484; case 447u: goto L_08AEA490; case 448u: goto L_08AEA4A8; case 449u: goto L_08AEA4E0; case 450u: goto L_08AEA4EC; case 451u: goto L_08AEA514; case 452u: goto L_08AEA528; case 453u: goto L_08AEA534; case 454u: goto L_08AEA53C; case 455u: goto L_08AEA554; case 456u: goto L_08AEA578; case 457u: goto L_08AEA5A0; case 458u: goto L_08AEA5AC; case 459u: goto L_08AEA5C0; case 460u: goto L_08AEA5C4; case 461u: goto L_08AEA5E8; case 462u: goto L_08AEA5F0; case 463u: goto L_08AEA610; case 464u: goto L_08AEA61C; case 465u: goto L_08AEA634; case 466u: goto L_08AEA638; case 467u: goto L_08AEA650; case 468u: goto L_08AEA678; case 469u: goto L_08AEA684; case 470u: goto L_08AEA6B0; case 471u: goto L_08AEA6E0; case 472u: goto L_08AEA6EC; case 473u: goto L_08AEA70C; case 474u: goto L_08AEA728; case 475u: goto L_08AEA750; case 476u: goto L_08AEA75C; case 477u: goto L_08AEA76C; case 478u: goto L_08AEA778; case 479u: goto L_08AEA784; case 480u: goto L_08AEA79C; case 481u: goto L_08AEA7D8; case 482u: goto L_08AEA7E4; case 483u: goto L_08AEA804; case 484u: goto L_08AEA80C; case 485u: goto L_08AEA81C; case 486u: goto L_08AEA828; case 487u: goto L_08AEA83C; case 488u: goto L_08AEA84C; case 489u: goto L_08AEA864; case 490u: goto L_08AEA878; case 491u: goto L_08AEA880; case 492u: goto L_08AEA894; case 493u: goto L_08AEA89C; case 494u: goto L_08AEA8B0; case 495u: goto L_08AEA8B8; case 496u: goto L_08AEA8CC; case 497u: goto L_08AEA8D4; case 498u: goto L_08AEA8E8; case 499u: goto L_08AEA8F0; case 500u: goto L_08AEA904; case 501u: goto L_08AEA90C; case 502u: goto L_08AEA920; case 503u: goto L_08AEA928; case 504u: goto L_08AEA93C; case 505u: goto L_08AEA944; case 506u: goto L_08AEA958; case 507u: goto L_08AEA960; case 508u: goto L_08AEA974; case 509u: goto L_08AEA97C; case 510u: goto L_08AEA990; case 511u: goto L_08AEA998; case 512u: goto L_08AEA9AC; case 513u: goto L_08AEA9B4; case 514u: goto L_08AEA9C8; case 515u: goto L_08AEA9D8; case 516u: goto L_08AEAA04; case 517u: goto L_08AEAA2C; case 518u: goto L_08AEAA38; case 519u: goto L_08AEAA50; case 520u: goto L_08AEAA60; case 521u: goto L_08AEAA84; case 522u: goto L_08AEAA8C; case 523u: goto L_08AEAAAC; case 524u: goto L_08AEAAB8; case 525u: goto L_08AEAAD0; case 526u: goto L_08AEAAD4; case 527u: goto L_08AEAAEC; case 528u: goto L_08AEAB14; case 529u: goto L_08AEAB34; case 530u: goto L_08AEAB40; case 531u: goto L_08AEAB50; case 532u: goto L_08AEAB98; case 533u: goto L_08AEAC00; case 534u: goto L_08AEAC34; case 535u: goto L_08AEAC68; case 536u: goto L_08AEAC9C; case 537u: goto L_08AEACCC; case 538u: goto L_08AEACF0; case 539u: goto L_08AEAD1C; case 540u: goto L_08AEAD2C; case 541u: goto L_08AEAD48; case 542u: goto L_08AEAD58; case 543u: goto L_08AEAD68; case 544u: goto L_08AEAD84; case 545u: goto L_08AEAD94; case 546u: goto L_08AEADA4; case 547u: goto L_08AEADB0; case 548u: goto L_08AEADBC; case 549u: goto L_08AEADCC; case 550u: goto L_08AEADD4; case 551u: goto L_08AEAE14; case 552u: goto L_08AEAE24; case 553u: goto L_08AEAE30; case 554u: goto L_08AEAE8C; case 555u: goto L_08AEAEB8; case 556u: goto L_08AEAEC8; case 557u: goto L_08AEAEE4; case 558u: goto L_08AEAEF4; case 559u: goto L_08AEAF04; case 560u: goto L_08AEAF20; case 561u: goto L_08AEAF30; case 562u: goto L_08AEAF40; case 563u: goto L_08AEAF4C; case 564u: goto L_08AEAF58; case 565u: goto L_08AEAF68; case 566u: goto L_08AEAF70; case 567u: goto L_08AEAFB0; case 568u: goto L_08AEAFC0; case 569u: goto L_08AEAFCC; case 570u: goto L_08AEB028; case 571u: goto L_08AEB058; case 572u: goto L_08AEB064; case 573u: goto L_08AEB07C; case 574u: goto L_08AEB098; case 575u: goto L_08AEB0C8; case 576u: goto L_08AEB0D4; case 577u: goto L_08AEB0EC; case 578u: goto L_08AEB108; case 579u: goto L_08AEB138; case 580u: goto L_08AEB144; case 581u: goto L_08AEB158; case 582u: goto L_08AEB168; case 583u: goto L_08AEB180; case 584u: goto L_08AEB19C; case 585u: goto L_08AEB1CC; case 586u: goto L_08AEB1D8; case 587u: goto L_08AEB1EC; case 588u: goto L_08AEB1FC; case 589u: goto L_08AEB214; case 590u: goto L_08AEB230; case 591u: goto L_08AEB254; case 592u: goto L_08AEB260; case 593u: goto L_08AEB274; case 594u: goto L_08AEB280; case 595u: goto L_08AEB28C; case 596u: goto L_08AEB29C; case 597u: goto L_08AEB2AC; case 598u: goto L_08AEB2C4; case 599u: goto L_08AEB2EC; case 600u: goto L_08AEB2F8; case 601u: goto L_08AEB308; case 602u: goto L_08AEB344; case 603u: goto L_08AEB35C; case 604u: goto L_08AEB37C; case 605u: goto L_08AEB388; case 606u: goto L_08AEB3A0; case 607u: goto L_08AEB3D0; case 608u: goto L_08AEB3DC; case 609u: goto L_08AEB3E4; case 610u: goto L_08AEB3F0; case 611u: goto L_08AEB40C; case 612u: goto L_08AEB414; case 613u: goto L_08AEB41C; case 614u: goto L_08AEB424; case 615u: goto L_08AEB434; case 616u: goto L_08AEB450; case 617u: goto L_08AEB480; case 618u: goto L_08AEB48C; case 619u: goto L_08AEB494; case 620u: goto L_08AEB4A0; case 621u: goto L_08AEB4BC; case 622u: goto L_08AEB4C4; case 623u: goto L_08AEB4CC; case 624u: goto L_08AEB4D4; case 625u: goto L_08AEB4E4; case 626u: goto L_08AEB500; case 627u: goto L_08AEB528; case 628u: goto L_08AEB534; case 629u: goto L_08AEB57C; case 630u: goto L_08AEB5A4; case 631u: goto L_08AEB5B0; case 632u: goto L_08AEB5F8; case 633u: goto L_08AEB620; case 634u: goto L_08AEB62C; case 635u: goto L_08AEB65C; case 636u: goto L_08AEB68C; case 637u: goto L_08AEB698; case 638u: goto L_08AEB6A0; case 639u: goto L_08AEB6AC; case 640u: goto L_08AEB6C0; case 641u: goto L_08AEB6DC; case 642u: goto L_08AEB70C; case 643u: goto L_08AEB720; case 644u: goto L_08AEB73C; case 645u: goto L_08AEB74C; case 646u: goto L_08AEB758; case 647u: goto L_08AEB764; case 648u: goto L_08AEB7A0; case 649u: goto L_08AEB7C0; case 650u: goto L_08AEB7CC; case 651u: goto L_08AEB7E8; case 652u: goto L_08AEB810; case 653u: goto L_08AEB81C; case 654u: goto L_08AEB858; case 655u: goto L_08AEB878; case 656u: goto L_08AEB884; case 657u: goto L_08AEB890; case 658u: goto L_08AEB8A4; case 659u: goto L_08AEB8CC; case 660u: goto L_08AEB8D8; case 661u: goto L_08AEB8E4; case 662u: goto L_08AEB908; case 663u: goto L_08AEB910; case 664u: goto L_08AEB930; case 665u: goto L_08AEB93C; case 666u: goto L_08AEB954; case 667u: goto L_08AEB958; case 668u: goto L_08AEB970; case 669u: goto L_08AEB998; case 670u: goto L_08AEB9A4; case 671u: goto L_08AEB9B0; case 672u: goto L_08AEB9D4; case 673u: goto L_08AEB9DC; case 674u: goto L_08AEB9FC; case 675u: goto L_08AEBA08; case 676u: goto L_08AEBA20; case 677u: goto L_08AEBA24; case 678u: goto L_08AEBA3C; case 679u: goto L_08AEBA64; case 680u: goto L_08AEBA70; case 681u: goto L_08AEBAAC; case 682u: goto L_08AEBADC; case 683u: goto L_08AEBAE8; case 684u: goto L_08AEBB38; case 685u: goto L_08AEBB40; case 686u: goto L_08AEBB48; case 687u: goto L_08AEBB60; case 688u: goto L_08AEBB7C; case 689u: goto L_08AEBB98; case 690u: goto L_08AEBBB8; case 691u: goto L_08AEBBC4; case 692u: goto L_08AEBBCC; case 693u: goto L_08AEBBD4; case 694u: goto L_08AEBBE8; case 695u: goto L_08AEBC20; case 696u: goto L_08AEBC2C; case 697u: goto L_08AEBC3C; case 698u: goto L_08AEBC64; case 699u: goto L_08AEBC84; case 700u: goto L_08AEBCC0; case 701u: goto L_08AEBCC8; case 702u: goto L_08AEBCCC; case 703u: goto L_08AEBCFC; case 704u: goto L_08AEBD0C; case 705u: goto L_08AEBD34; case 706u: goto L_08AEBD50; case 707u: goto L_08AEBD58; case 708u: goto L_08AEBD84; case 709u: goto L_08AEBDA0; case 710u: goto L_08AEBDB0; case 711u: goto L_08AEBDC8; case 712u: goto L_08AEBDD0; case 713u: goto L_08AEBDD8; case 714u: goto L_08AEBDE0; case 715u: goto L_08AEBDEC; case 716u: goto L_08AEBDFC; case 717u: goto L_08AEBE04; case 718u: goto L_08AEBE0C; case 719u: goto L_08AEBE28; case 720u: goto L_08AEBE30; case 721u: goto L_08AEBE38; case 722u: goto L_08AEBE54; case 723u: goto L_08AEBE5C; case 724u: goto L_08AEBE64; case 725u: goto L_08AEBE70; case 726u: goto L_08AEBE90; case 727u: goto L_08AEBE98; case 728u: goto L_08AEBEB4; case 729u: goto L_08AEBEBC; case 730u: goto L_08AEBEC4; case 731u: goto L_08AEBEE8; case 732u: goto L_08AEBF4C; case 733u: goto L_08AEBF54; case 734u: goto L_08AEBF64; case 735u: goto L_08AEBF70; case 736u: goto L_08AEBF7C; case 737u: goto L_08AEBF8C; case 738u: goto L_08AEBF94; case 739u: goto L_08AEBFB4; case 740u: goto L_08AEBFC8; case 741u: goto L_08AEBFD4; case 742u: goto L_08AEBFDC; case 743u: goto L_08AEBFE4; 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_08AE8000: { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE8014; } goto L_08AE8008; } L_08AE8008: aot_gpr_4 = (ctx.gpr[19] & aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8030; } goto L_08AE8014; } L_08AE8014: aot_gpr_4 = (ctx.gpr[19] | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8030; } goto L_08AE802C; } L_08AE802C: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE8030; L_08AE8030: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[6]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; ctx.gpr[20] = aot_run_words[4]; aot_gpr_31 = aot_run_words[5]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE8054: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AE807Cu); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE807Cu) goto L_08AE807C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE807C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8088u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8088u) goto L_08AE8088; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8088: { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); aot_gpr_5 = aot_run_words[3]; } aot_gpr_5 = (aot_gpr_5 & 255u); aot_gpr_31 = (0x08AE80A4u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 645u, 0x08832C74u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE80A4u) goto L_08AE80A4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE80A4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE80BC: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(36), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE80E4u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE80E4u) goto L_08AE80E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE80E4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE80F0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE80F0u) goto L_08AE80F0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE80F0: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_4 = (17008u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / aot_fpr_13; aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_16 + 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); } 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_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_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE8128u); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0152_entry, 152u, 538u, 0x08A666C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8128u) goto L_08AE8128; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8128: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(208))); aot_gpr_5 = (512u << 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_08AE8164; } goto L_08AE8148; } L_08AE8148: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08AE8164; } goto L_08AE8154; } L_08AE8154: aot_gpr_4 = (15969u << 16u); aot_gpr_4 = (aot_gpr_4 | 18350u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1640), std::bit_cast(aot_fpr_12)); goto L_08AE8164; L_08AE8164: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(36), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE817C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE81A4u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE81A4u) goto L_08AE81A4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE81A4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE81B0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE81B0u) goto L_08AE81B0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE81B0: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(616)))))); if (branch_taken) { goto L_08AE81CC; } goto L_08AE81C0; } L_08AE81C0: aot_gpr_4 = (aot_gpr_4 | 128u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(616), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE81D8; } goto L_08AE81CC; } L_08AE81CC: ctx.gpr[6] = (0u + static_cast(-129)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(616), static_cast(aot_gpr_4)); goto L_08AE81D8; L_08AE81D8: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE81F0: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE8218u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8218u) goto L_08AE8218; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8218: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8224u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8224u) goto L_08AE8224; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8224: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_5 = (17076u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_5); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; aot_gpr_5 = (16457u << 16u); aot_gpr_5 = (aot_gpr_5 | 4059u); aot_fpr_14 = std::bit_cast(aot_gpr_5); { const float fs = aot_fpr_12; const float ft = aot_fpr_14; 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_5 = (17204u << 16u); ctx.fpr[15] = std::bit_cast(aot_gpr_5); aot_fpr_14 = aot_fpr_14 / ctx.fpr[15]; aot_fpr_13 = std::bit_cast(0u); aot_gpr_5 = (16585u << 16u); aot_gpr_5 = (aot_gpr_5 | 4059u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_14 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_12 = std::bit_cast(aot_gpr_5); if (branch_taken) { goto L_08AE8284; } goto L_08AE8270; } L_08AE8270: aot_fpr_14 = aot_fpr_14 + aot_fpr_12; 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_08AE8270; } goto L_08AE8284; } L_08AE8284: 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_08AE82A8; } goto L_08AE8294; } L_08AE8294: aot_fpr_14 = aot_fpr_14 - aot_fpr_12; 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_08AE8294; } goto L_08AE82A8; } L_08AE82A8: aot_gpr_31 = (0x08AE82B0u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_14)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 652u, 0x08832D48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE82B0u) goto L_08AE82B0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE82B0: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE82C8: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE82E8u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE82E8u) goto L_08AE82E8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE82E8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE82F4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE82F4u) goto L_08AE82F4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE82F4: aot_gpr_31 = (0x08AE82FCu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 653u, 0x08832D50u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE82FCu) goto L_08AE82FC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE82FC: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8310: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AE8338u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8338u) goto L_08AE8338; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8338: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8344u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8344u) goto L_08AE8344; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8344: { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); aot_gpr_5 = aot_run_words[3]; } aot_gpr_5 = (aot_gpr_5 & 255u); aot_gpr_31 = (0x08AE8360u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 654u, 0x08832D60u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8360u) goto L_08AE8360; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8360: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8378: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE83A0u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE83A0u) goto L_08AE83A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE83A0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE83ACu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE83ACu) goto L_08AE83AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE83AC: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(617)))))); if (branch_taken) { goto L_08AE83C8; } goto L_08AE83BC; } L_08AE83BC: aot_gpr_4 = (aot_gpr_4 | 1u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(617), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE83D4; } goto L_08AE83C8; } L_08AE83C8: ctx.gpr[6] = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(617), static_cast(aot_gpr_4)); goto L_08AE83D4; L_08AE83D4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE83EC: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE8414u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8414u) goto L_08AE8414; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8414: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8420u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8420u) goto L_08AE8420; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8420: aot_gpr_4 = (ctx.gpr[2] + static_cast(384)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_31 = (0x08AE8430u); aot_gpr_5 = (aot_gpr_5 & 255u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0118_entry, 118u, 180u, 0x089DD23Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8430u) goto L_08AE8430; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8430: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8448: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE8468u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8468u) goto L_08AE8468; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8468: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8474u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8474u) goto L_08AE8474; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8474: aot_gpr_31 = (0x08AE847Cu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 660u, 0x08832E04u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE847Cu) goto L_08AE847C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE847C: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8490: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_17 = (0u | 2u); ctx.gpr[18] = (2236u << 16u); aot_gpr_16 = (ctx.gpr[18] + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE84C0u); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE84C0u) goto L_08AE84C0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE84C0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE84CCu); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE84CCu) goto L_08AE84CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE84CC: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(852))); ctx.gpr[7] = (0u | 6u); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[7]; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); if (branch_taken) { goto L_08AE8534; } goto L_08AE84E0; } L_08AE84E0: { const bool branch_taken = aot_gpr_4 != aot_gpr_17; if (branch_taken) { goto L_08AE84F4; } goto L_08AE84E8; } L_08AE84E8: aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(4), 0u); { const bool branch_taken = 0u == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AE8508; } goto L_08AE84F4; } L_08AE84F4: ctx.gpr[6] = (0u | 3u); { const bool branch_taken = aot_gpr_4 != ctx.gpr[6]; if (branch_taken) { goto L_08AE8508; } goto L_08AE8500; } L_08AE8500: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(4), aot_gpr_4); goto L_08AE8508; L_08AE8508: ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(92))); ctx.gpr[6] = (ctx.gpr[6] + static_cast(344)); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[6] + static_cast(0)))))); ctx.gpr[7] = (aot_gpr_5 + ctx.gpr[7]); aot_gpr_5 = (aot_gpr_4 & 255u); ctx.gpr[8] = (aot_mem.aot_direct_load32(ctx.gpr[6] + static_cast(4))); aot_gpr_4 = (ctx.gpr[7] | 0u); jump_target = ctx.gpr[8]; aot_gpr_31 = (0x08AE852Cu); ctx.gpr[6] = (0u | 1u); 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 == 0x08AE852Cu) goto L_08AE852C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE852C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AE8558; } goto L_08AE8534; } L_08AE8534: ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(92))); ctx.gpr[6] = (ctx.gpr[6] + static_cast(344)); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[6] + static_cast(0)))))); ctx.gpr[7] = (aot_gpr_5 + ctx.gpr[7]); aot_gpr_5 = (aot_gpr_4 & 255u); ctx.gpr[8] = (aot_mem.aot_direct_load32(ctx.gpr[6] + static_cast(4))); aot_gpr_4 = (ctx.gpr[7] | 0u); jump_target = ctx.gpr[8]; aot_gpr_31 = (0x08AE8558u); ctx.gpr[6] = (0u | 1u); 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 == 0x08AE8558u) goto L_08AE8558; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8558: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AE8574: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); ctx.gpr[6] = (2236u << 16u); aot_gpr_16 = (ctx.gpr[6] + static_cast(29704)); ctx.gpr[6] = (0u | 3u); aot_gpr_31 = (0x08AE8598u); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8598u) goto L_08AE8598; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8598: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_gpr_4 = (aot_gpr_4 << 24u); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 24u)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(8))); aot_gpr_5 = (aot_gpr_5 << 24u); aot_gpr_5 = (static_cast(static_cast(aot_gpr_5) >> 24u)); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-3208))); aot_mem.aot_direct_store8(ctx.gpr[6] + static_cast(6), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-3208))); aot_mem.aot_direct_store8(aot_gpr_4 + static_cast(7), static_cast(aot_gpr_5)); ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE85D4: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE85F4u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE85F4u) goto L_08AE85F4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE85F4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8600u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8600u) goto L_08AE8600; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8600: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08AE8628; } goto L_08AE8610; } L_08AE8610: aot_gpr_31 = (0x08AE8618u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 711u, 0x088331D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8618u) goto L_08AE8618; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8618: aot_gpr_31 = (0x08AE8620u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 681u, 0x08832FA8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8620u) goto L_08AE8620; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8620: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AE863C; } goto L_08AE8628; } L_08AE8628: aot_gpr_5 = (0u | 4u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08AE863C; } goto L_08AE8634; } L_08AE8634: aot_gpr_31 = (0x08AE863Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0123_entry, 123u, 265u, 0x089F1478u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE863Cu) goto L_08AE863C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE863C: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8650: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE8670u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8670u) goto L_08AE8670; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8670: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE867Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE867Cu) goto L_08AE867C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE867C: aot_gpr_31 = (0x08AE8684u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 676u, 0x08832F40u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8684u) goto L_08AE8684; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8684: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8698: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE86C0u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE86C0u) goto L_08AE86C0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE86C0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE86CCu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE86CCu) goto L_08AE86CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE86CC: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(236))); if (branch_taken) { goto L_08AE86F4; } goto L_08AE86DC; } L_08AE86DC: aot_gpr_5 = (16384u << 16u); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_4 = (aot_gpr_4 | 4u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); if (branch_taken) { goto L_08AE874C; } goto L_08AE86F4; } L_08AE86F4: aot_gpr_5 = (49152u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_5 = (0u + static_cast(-5)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_31 = (0x08AE8718u); aot_gpr_4 = (aot_gpr_16 + static_cast(48)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0001_entry, 1u, 321u, 0x08809958u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8718u) goto L_08AE8718; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8718: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08AE874C; } goto L_08AE8720; } L_08AE8720: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (65520u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_5 = (aot_gpr_4 + static_cast(168)); 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; aot_gpr_31 = (0x08AE874Cu); 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 == 0x08AE874Cu) goto L_08AE874C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE874C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8764: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[5]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_17 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE8798u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8798u) goto L_08AE8798; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8798: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE87A4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE87A4u) goto L_08AE87A4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE87A4: ctx.gpr[19] = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15976))); aot_gpr_31 = (0x08AE87B4u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(4))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 431u, 0x08B65C68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE87B4u) goto L_08AE87B4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE87B4: ctx.gpr[18] = (ctx.gpr[2] | 0u); aot_gpr_17 = (0u | 0u); { const bool branch_taken = ctx.gpr[19] == 0u; if (branch_taken) { goto L_08AE8800; } goto L_08AE87C4; } L_08AE87C4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(688))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8800; } goto L_08AE87D0; } L_08AE87D0: { const bool branch_taken = aot_gpr_4 != ctx.gpr[18]; if (branch_taken) { goto L_08AE87DC; } goto L_08AE87D8; } L_08AE87D8: aot_gpr_17 = (0u | 1u); goto L_08AE87DC; L_08AE87DC: aot_gpr_31 = (0x08AE87E4u); aot_gpr_4 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE87E4u) goto L_08AE87E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE87E4: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AE8800; } goto L_08AE87EC; } L_08AE87EC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(688))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(1152))); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08AE8800; } goto L_08AE87FC; } L_08AE87FC: aot_gpr_17 = (0u | 1u); goto L_08AE8800; L_08AE8800: aot_gpr_4 = (0u < aot_gpr_17 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_17 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_17 = (0u < aot_gpr_17 ? 1u : 0u); if (branch_taken) { goto L_08AE882C; } goto L_08AE8824; } L_08AE8824: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_17)); if (branch_taken) { goto L_08AE8874; } goto L_08AE882C; } L_08AE882C: aot_gpr_4 = (aot_gpr_16 + static_cast(518)); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(0))); ctx.gpr[6] = (static_cast(aot_gpr_5) < 9 ? 1u : 0u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_4 + static_cast(0), static_cast(aot_gpr_5)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE8858; } goto L_08AE884C; } L_08AE884C: aot_gpr_4 = (aot_gpr_17 & aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8874; } goto L_08AE8858; } L_08AE8858: aot_gpr_4 = (aot_gpr_17 | aot_gpr_4); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8874; } goto L_08AE8870; } L_08AE8870: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE8874; L_08AE8874: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[5]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; aot_gpr_31 = aot_run_words[4]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE8894: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_17 + static_cast(29704)); aot_gpr_4 = (aot_gpr_16 | 0u); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE88C8u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE88C8u) goto L_08AE88C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE88C8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE88D4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE88D4u) goto L_08AE88D4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE88D4: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE88E4u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(4))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE88E4u) goto L_08AE88E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE88E4: aot_gpr_5 = (ctx.gpr[2] | 0u); aot_gpr_4 = (0u | 0u); { const bool branch_taken = aot_gpr_17 == 0u; if (branch_taken) { goto L_08AE890C; } goto L_08AE88F4; } L_08AE88F4: aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(688))); { const bool branch_taken = aot_gpr_17 == 0u; if (branch_taken) { goto L_08AE890C; } goto L_08AE8900; } L_08AE8900: { const bool branch_taken = aot_gpr_17 != aot_gpr_5; if (branch_taken) { goto L_08AE890C; } goto L_08AE8908; } L_08AE8908: aot_gpr_4 = (0u | 1u); goto L_08AE890C; L_08AE890C: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE8938; } goto L_08AE8930; } L_08AE8930: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8980; } goto L_08AE8938; } L_08AE8938: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE8964; } goto L_08AE8958; } L_08AE8958: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8980; } goto L_08AE8964; } L_08AE8964: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8980; } goto L_08AE897C; } L_08AE897C: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE8980; L_08AE8980: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AE899C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_17 = (2236u << 16u); aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_31 = (0x08AE89BCu); aot_gpr_4 = (ctx.gpr[28] + static_cast(7768)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0128_entry, 128u, 625u, 0x08A06778u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE89BCu) goto L_08AE89BC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE89BC: aot_gpr_4 = (ctx.gpr[2] | 0u); { const bool branch_taken = static_cast(aot_gpr_4) < 0; aot_gpr_5 = (0u | 111u); if (branch_taken) { goto L_08AE89D8; } goto L_08AE89C8; } L_08AE89C8: aot_gpr_5 = (static_cast(aot_gpr_4) < 9 ? 1u : 0u); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_08AE89E0; } goto L_08AE89D4; } L_08AE89D4: aot_gpr_5 = (0u | 111u); goto L_08AE89D8; L_08AE89D8: { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08AE89E8; } goto L_08AE89E0; } L_08AE89E0: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); if (branch_taken) { goto L_08AE89F0; } goto L_08AE89E8; } L_08AE89E8: aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); goto L_08AE89F0; L_08AE89F0: aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE8A00u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8A00u) goto L_08AE8A00; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8A00: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8A18: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[10]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[22], ctx.gpr[23], ctx.gpr[30], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(8), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[23] = (2236u << 16u); ctx.gpr[18] = (ctx.gpr[23] + static_cast(29704)); ctx.gpr[23] = (aot_gpr_16 + static_cast(16)); aot_gpr_5 = (ctx.gpr[23] | 0u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AE8A64u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8A64u) goto L_08AE8A64; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8A64: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.gpr[22] = (0u + static_cast(-1)); ctx.gpr[21] = (0u | 1u); ctx.gpr[30] = (0u | 2u); ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); aot_gpr_4 = (aot_gpr_17 << 5u); ctx.gpr[19] = (0u + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 6u); ctx.gpr[19] = (ctx.gpr[19] + aot_gpr_4); 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[23]); ctx.gpr[23] = (2236u << 16u); aot_gpr_4 = (aot_gpr_17 | 0u); goto L_08AE8A9C; L_08AE8A9C: aot_gpr_17 = (ctx.gpr[20] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(-2080)); if (branch_taken) { goto L_08AE8B7C; } goto L_08AE8AA8; } L_08AE8AA8: aot_gpr_4 = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[22] != aot_gpr_4; if (branch_taken) { goto L_08AE8B7C; } goto L_08AE8AB4; } L_08AE8AB4: { const bool branch_taken = static_cast(aot_gpr_17) < 0; ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); if (branch_taken) { goto L_08AE8AD0; } goto L_08AE8ABC; } L_08AE8ABC: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(8))); aot_gpr_4 = (static_cast(aot_gpr_17) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); goto L_08AE8AD8; } goto L_08AE8AD0; L_08AE8AD0: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AE8AF8; } goto L_08AE8AD8; } L_08AE8AD8: aot_gpr_4 = (aot_gpr_4 + aot_gpr_17); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 & 128u); if (aot_gpr_4 == 0u) { aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); goto L_08AE8AF4; } goto L_08AE8AEC; L_08AE8AEC: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AE8AF8; } goto L_08AE8AF4; } L_08AE8AF4: aot_gpr_16 = (aot_gpr_16 + ctx.gpr[19]); goto L_08AE8AF8; L_08AE8AF8: { const bool branch_taken = aot_gpr_16 == 0u; if (branch_taken) { goto L_08AE8B74; } goto L_08AE8B00; } L_08AE8B00: aot_gpr_31 = (0x08AE8B08u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B01E00, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0191_entry, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8B08u) goto L_08AE8B08; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8B08: { const bool branch_taken = ctx.gpr[2] == ctx.gpr[21]; if (branch_taken) { goto L_08AE8B20; } goto L_08AE8B10; } L_08AE8B10: aot_gpr_31 = (0x08AE8B18u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B01E00, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0191_entry, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8B18u) goto L_08AE8B18; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8B18: { const bool branch_taken = ctx.gpr[2] != ctx.gpr[30]; if (branch_taken) { goto L_08AE8B74; } goto L_08AE8B20; } L_08AE8B20: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(16))); if (aot_gpr_5 == aot_gpr_4) { aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); goto L_08AE8B3C; } goto L_08AE8B30; L_08AE8B30: { const bool branch_taken = static_cast(aot_gpr_4) >= 0; if (branch_taken) { goto L_08AE8B74; } goto L_08AE8B38; } L_08AE8B38: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); goto L_08AE8B3C; L_08AE8B3C: { const bool branch_taken = aot_gpr_4 != ctx.gpr[21]; if (branch_taken) { goto L_08AE8B74; } goto L_08AE8B44; } L_08AE8B44: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[23] + static_cast(29704))); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(ctx.gpr[18] + static_cast(4), aot_run_words); aot_fpr_13 = std::bit_cast(aot_run_words[0]); aot_fpr_14 = std::bit_cast(aot_run_words[1]); ctx.fpr[15] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x08AE8B5Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 788u, 0x08AAF8F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8B5Cu) goto L_08AE8B5C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8B5C: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AE8B74; } goto L_08AE8B64; } L_08AE8B64: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8B70u); aot_gpr_5 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0218_entry, 218u, 139u, 0x08B6CC28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8B70u) goto L_08AE8B70; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8B70: ctx.gpr[22] = (ctx.gpr[2] | 0u); goto L_08AE8B74; L_08AE8B74: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_gpr_17 | 0u); if (branch_taken) { goto L_08AE8A9C; } goto L_08AE8B7C; } L_08AE8B7C: aot_mem.aot_direct_store32(ctx.gpr[23] + static_cast(29704), ctx.gpr[22]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_gpr_31 = (0x08AE8B90u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8B90u) goto L_08AE8B90; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8B90: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[10]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(8), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; ctx.gpr[20] = aot_run_words[4]; ctx.gpr[21] = aot_run_words[5]; ctx.gpr[22] = aot_run_words[6]; ctx.gpr[23] = aot_run_words[7]; ctx.gpr[30] = aot_run_words[8]; aot_gpr_31 = aot_run_words[9]; } jump_target = aot_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_08AE8BC4: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE8BECu); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8BECu) goto L_08AE8BEC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8BEC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8BF8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8BF8u) goto L_08AE8BF8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8BF8: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(617)))))); if (branch_taken) { goto L_08AE8C18; } goto L_08AE8C08; } L_08AE8C08: ctx.gpr[6] = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(617), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8C20; } goto L_08AE8C18; } L_08AE8C18: aot_gpr_4 = (aot_gpr_4 | 8u); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(617), static_cast(aot_gpr_4)); goto L_08AE8C20; L_08AE8C20: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8C38: aot_gpr_29 = (aot_gpr_29 + static_cast(-176)); { const std::uint32_t aot_run_words[6]{std::bit_cast(aot_fpr_20), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(148), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE8C68u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8C68u) goto L_08AE8C68; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8C68: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8C74u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8C74u) goto L_08AE8C74; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8C74: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(656))); aot_gpr_4 = (aot_gpr_4 + static_cast(150)); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_gpr_4 = (aot_gpr_4 < aot_gpr_5 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8D74; } goto L_08AE8C90; } L_08AE8C90: aot_gpr_17 = (aot_gpr_29 + static_cast(56)); aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 37u); aot_gpr_31 = (0x08AE8CA4u); ctx.gpr[6] = (0u | 5000u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0143_entry, 143u, 117u, 0x08A40A8Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8CA4u) goto L_08AE8CA4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8CA4: aot_gpr_4 = (ctx.gpr[28] + static_cast(7616)); { 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.gpr[18] = (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[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); } ctx.gpr[19] = (aot_gpr_29 + static_cast(16)); aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE8CC8u); ctx.gpr[6] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0183_entry, 183u, 1010u, 0x08AE3E58u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8CC8u) goto L_08AE8CC8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8CC8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_16 + static_cast(320)); { 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(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 = 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); } { 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, 0u>(); { 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); } { 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_gpr_17 | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); ctx.gpr[6] = (ctx.gpr[18] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); aot_gpr_31 = (0x08AE8D1Cu); ctx.gpr[9] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0145_entry, 145u, 46u, 0x08A4842Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8D1Cu) goto L_08AE8D1C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8D1C: aot_fpr_20 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), std::bit_cast(aot_fpr_20)); aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), std::bit_cast(aot_fpr_12)); ctx.gpr[6] = (aot_gpr_29 + static_cast(48)); aot_gpr_4 = (15564u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE8D50u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0143_entry, 143u, 255u, 0x08A41568u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8D50u) goto L_08AE8D50; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8D50: aot_gpr_4 = (ctx.gpr[28] + static_cast(7768)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); ctx.gpr[6] = (16256u << 16u); aot_fpr_13 = std::bit_cast(ctx.gpr[6]); ctx.gpr[6] = (0u | 55u); aot_gpr_31 = (0x08AE8D6Cu); 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_0128_entry, 128u, 503u, 0x08A05F80u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8D6Cu) goto L_08AE8D6C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8D6C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(656), aot_gpr_4); goto L_08AE8D74; L_08AE8D74: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[6]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(148), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); aot_gpr_16 = aot_run_words[1]; aot_gpr_17 = aot_run_words[2]; ctx.gpr[18] = aot_run_words[3]; ctx.gpr[19] = aot_run_words[4]; aot_gpr_31 = aot_run_words[5]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(176)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE8D98: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE8DB8u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8DB8u) goto L_08AE8DB8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8DB8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8DC4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8DC4u) goto L_08AE8DC4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8DC4: aot_gpr_4 = (ctx.gpr[2] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8DD4; } goto L_08AE8DD0; } L_08AE8DD0: aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(688), 0u); goto L_08AE8DD4; L_08AE8DD4: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8DE8: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE8E10u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8E10u) goto L_08AE8E10; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8E10: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8E1Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8E1Cu) goto L_08AE8E1C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8E1C: aot_gpr_4 = (0u | 0u); { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AE8E44; } goto L_08AE8E28; } L_08AE8E28: aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); aot_gpr_17 = (static_cast(static_cast(aot_gpr_17) >> 8u)); { const bool branch_taken = static_cast(aot_gpr_17) <= 0; aot_gpr_5 = (static_cast(aot_gpr_17) < 40 ? 1u : 0u); if (branch_taken) { goto L_08AE8E44; } goto L_08AE8E38; } L_08AE8E38: { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AE8E44; } goto L_08AE8E40; } L_08AE8E40: aot_gpr_4 = (0u | 1u); goto L_08AE8E44; L_08AE8E44: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE8E70; } goto L_08AE8E68; } L_08AE8E68: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8EB8; } goto L_08AE8E70; } L_08AE8E70: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE8E9C; } goto L_08AE8E90; } L_08AE8E90: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8EB8; } goto L_08AE8E9C; } L_08AE8E9C: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8EB8; } goto L_08AE8EB4; } L_08AE8EB4: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE8EB8; L_08AE8EB8: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE8ED0: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE8EF0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8EF0u) goto L_08AE8EF0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8EF0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE8F08; } goto L_08AE8EFC; } L_08AE8EFC: aot_gpr_4 = (0u | 1u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(1781), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE8F0C; } goto L_08AE8F08; } L_08AE8F08: aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(1781), static_cast(0u)); goto L_08AE8F0C; L_08AE8F0C: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE8F20: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_17 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE8F50u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8F50u) goto L_08AE8F50; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8F50: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE8F5Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8F5Cu) goto L_08AE8F5C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8F5C: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(4))); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(236))); if (branch_taken) { goto L_08AE8FB4; } goto L_08AE8F6C; } L_08AE8F6C: aot_gpr_5 = (16384u << 16u); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(236), aot_gpr_4); aot_gpr_4 = (aot_gpr_4 | 4u); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(236), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(522))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE900C; } goto L_08AE8F8C; } L_08AE8F8C: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AE8F98u); aot_gpr_5 = (0u | 2u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 247u, 0x08891B8Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8F98u) goto L_08AE8F98; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8F98: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 | 2048u); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); aot_gpr_31 = (0x08AE8FACu); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 224u, 0x08891A2Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8FACu) goto L_08AE8FAC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8FAC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AE900C; } goto L_08AE8FB4; } L_08AE8FB4: aot_gpr_5 = (49152u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(236), aot_gpr_4); aot_gpr_5 = (0u + static_cast(-5)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(236), aot_gpr_4); aot_gpr_31 = (0x08AE8FD8u); aot_gpr_4 = (aot_gpr_17 + static_cast(48)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0001_entry, 1u, 321u, 0x08809958u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE8FD8u) goto L_08AE8FD8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE8FD8: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_08AE900C; } goto L_08AE8FE0; } L_08AE8FE0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(76))); aot_gpr_5 = (65520u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(-1)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(76), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(92))); aot_gpr_5 = (aot_gpr_4 + static_cast(168)); 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; aot_gpr_31 = (0x08AE900Cu); aot_gpr_4 = (aot_gpr_17 + 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 == 0x08AE900Cu) goto L_08AE900C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE900C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AE9028: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_17 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_17 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE9058u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9058u) goto L_08AE9058; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9058: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9064u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9064u) goto L_08AE9064; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9064: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(4))); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(236))); if (branch_taken) { goto L_08AE90B4; } goto L_08AE9074; } L_08AE9074: aot_gpr_5 = (0u + static_cast(-8193)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(522))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE9110; } goto L_08AE908C; } L_08AE908C: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE9098u); aot_gpr_5 = (0u | 2u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 247u, 0x08891B8Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9098u) goto L_08AE9098; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9098: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_4 = (aot_gpr_4 | 2048u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); aot_gpr_31 = (0x08AE90ACu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 224u, 0x08891A2Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE90ACu) goto L_08AE90AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE90AC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AE9110; } goto L_08AE90B4; } L_08AE90B4: aot_gpr_4 = (aot_gpr_4 | 8192u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (aot_gpr_4 & 2048u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AE9110; } goto L_08AE90CC; } L_08AE90CC: aot_gpr_5 = (0u + static_cast(-2049)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(76), aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (aot_gpr_5 & 2048u); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AE90F8; } goto L_08AE90E8; } L_08AE90E8: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (aot_gpr_5 & 2048u); { const bool branch_taken = aot_gpr_5 == 0u; aot_gpr_4 = (aot_gpr_4 & 255u); if (branch_taken) { goto L_08AE9100; } goto L_08AE90F8; } L_08AE90F8: aot_gpr_4 = (0u | 1u); aot_gpr_4 = (aot_gpr_4 & 255u); goto L_08AE9100; L_08AE9100: { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08AE9110; } goto L_08AE9108; } L_08AE9108: aot_gpr_31 = (0x08AE9110u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0152_entry, 152u, 463u, 0x08A66048u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9110u) goto L_08AE9110; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9110: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AE912C: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[10]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[26]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AE9170u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9170u) goto L_08AE9170; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9170: ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); ctx.fpr[24] = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); aot_fpr_20 = std::bit_cast(aot_run_words[2]); } aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.gpr[18] = (aot_gpr_4 + static_cast(-1)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[19] = (ctx.gpr[18] | 0u); if (branch_taken) { goto L_08AE922C; } goto L_08AE9194; } L_08AE9194: aot_gpr_16 = (0u | 1u); aot_gpr_4 = (ctx.gpr[18] << 5u); aot_gpr_17 = (0u + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 6u); aot_gpr_17 = (aot_gpr_17 + aot_gpr_4); goto L_08AE91A8; L_08AE91A8: { const bool branch_taken = static_cast(ctx.gpr[18]) < 0; if (branch_taken) { goto L_08AE91C4; } goto L_08AE91B0; } L_08AE91B0: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(8))); aot_gpr_4 = (static_cast(ctx.gpr[18]) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(4))); goto L_08AE91CC; } goto L_08AE91C4; L_08AE91C4: { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (0u | 0u); if (branch_taken) { goto L_08AE91EC; } goto L_08AE91CC; } L_08AE91CC: aot_gpr_4 = (aot_gpr_4 + ctx.gpr[18]); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 & 128u); if (aot_gpr_4 == 0u) { ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(0))); goto L_08AE91E8; } goto L_08AE91E0; L_08AE91E0: { const bool branch_taken = 0u == 0u; ctx.gpr[20] = (0u | 0u); if (branch_taken) { goto L_08AE91EC; } goto L_08AE91E8; } L_08AE91E8: ctx.gpr[20] = (ctx.gpr[20] + aot_gpr_17); goto L_08AE91EC; L_08AE91EC: { const bool branch_taken = ctx.gpr[20] == 0u; if (branch_taken) { goto L_08AE9218; } goto L_08AE91F4; } L_08AE91F4: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_fpr_14 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_gpr_31 = (0x08AE920Cu); ctx.fpr[15] = 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, 788u, 0x08AAF8F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE920Cu) goto L_08AE920C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE920C: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AE9218; } goto L_08AE9214; } L_08AE9214: aot_mem.aot_direct_store32(ctx.gpr[20] + static_cast(680), aot_gpr_16); goto L_08AE9218; L_08AE9218: aot_gpr_4 = (ctx.gpr[18] | 0u); ctx.gpr[18] = (ctx.gpr[19] + static_cast(-1)); ctx.gpr[19] = (ctx.gpr[18] | 0u); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_17 = (aot_gpr_17 + static_cast(-2080)); if (branch_taken) { goto L_08AE91A8; } goto L_08AE922C; } L_08AE922C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[10]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); ctx.fpr[24] = std::bit_cast(aot_run_words[2]); ctx.fpr[26] = std::bit_cast(aot_run_words[3]); aot_gpr_16 = aot_run_words[4]; aot_gpr_17 = aot_run_words[5]; ctx.gpr[18] = aot_run_words[6]; ctx.gpr[19] = aot_run_words[7]; ctx.gpr[20] = aot_run_words[8]; aot_gpr_31 = aot_run_words[9]; } jump_target = aot_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_08AE9260: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE9288u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9288u) goto L_08AE9288; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9288: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9294u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9294u) goto L_08AE9294; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9294: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(80))); aot_gpr_31 = (0x08AE92A0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 190u, 0x08945304u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE92A0u) goto L_08AE92A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE92A0: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE92B8: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AE92D8u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE92D8u) goto L_08AE92D8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE92D8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE92E4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE92E4u) goto L_08AE92E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE92E4: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(852))); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_08AE9318; } goto L_08AE92F4; } L_08AE92F4: aot_gpr_5 = (aot_gpr_4 | 0u); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(1653)))))); ctx.gpr[6] = (aot_gpr_4 & 7u); { const bool branch_taken = ctx.gpr[6] == 0u; if (branch_taken) { goto L_08AE9318; } goto L_08AE9308; } L_08AE9308: ctx.gpr[6] = (0u + static_cast(-8)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(1653), static_cast(aot_gpr_4)); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(1656), 0u); goto L_08AE9318; L_08AE9318: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AE932C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE9354u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9354u) goto L_08AE9354; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9354: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9360u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9360u) goto L_08AE9360; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9360: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[2] + static_cast(86)))))); ctx.gpr[6] = (aot_gpr_5 < static_cast(170) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] != 0u; aot_gpr_5 = (aot_gpr_5 < static_cast(-947) ? 1u : 0u); if (branch_taken) { goto L_08AE9380; } goto L_08AE9374; } L_08AE9374: { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AE9380; } goto L_08AE937C; } L_08AE937C: aot_gpr_4 = (0u | 1u); goto L_08AE9380; L_08AE9380: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE93AC; } goto L_08AE93A4; } L_08AE93A4: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE93F4; } goto L_08AE93AC; } L_08AE93AC: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE93D8; } goto L_08AE93CC; } L_08AE93CC: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE93F4; } goto L_08AE93D8; } L_08AE93D8: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE93F4; } goto L_08AE93F0; } L_08AE93F0: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE93F4; L_08AE93F4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE940C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE9434u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9434u) goto L_08AE9434; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9434: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9440u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9440u) goto L_08AE9440; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9440: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); ctx.gpr[6] = (0u | 6u); { const bool branch_taken = aot_gpr_5 != ctx.gpr[6]; if (branch_taken) { goto L_08AE9458; } goto L_08AE9454; } L_08AE9454: aot_gpr_4 = (0u | 1u); goto L_08AE9458; L_08AE9458: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE9484; } goto L_08AE947C; } L_08AE947C: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE94CC; } goto L_08AE9484; } L_08AE9484: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE94B0; } goto L_08AE94A4; } L_08AE94A4: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE94CC; } goto L_08AE94B0; } L_08AE94B0: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE94CC; } goto L_08AE94C8; } L_08AE94C8: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE94CC; L_08AE94CC: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE94E4: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE950Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE950Cu) goto L_08AE950C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE950C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9518u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9518u) goto L_08AE9518; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9518: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); ctx.gpr[6] = (0u | 5u); { const bool branch_taken = aot_gpr_5 != ctx.gpr[6]; if (branch_taken) { goto L_08AE9530; } goto L_08AE952C; } L_08AE952C: aot_gpr_4 = (0u | 1u); goto L_08AE9530; L_08AE9530: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE955C; } goto L_08AE9554; } L_08AE9554: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE95A4; } goto L_08AE955C; } L_08AE955C: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE9588; } goto L_08AE957C; } L_08AE957C: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE95A4; } goto L_08AE9588; } L_08AE9588: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE95A4; } goto L_08AE95A0; } L_08AE95A0: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE95A4; L_08AE95A4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE95BC: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE95E4u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE95E4u) goto L_08AE95E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE95E4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE95F0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE95F0u) goto L_08AE95F0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE95F0: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(852))); ctx.gpr[6] = (0u | 4u); { const bool branch_taken = aot_gpr_5 != ctx.gpr[6]; if (branch_taken) { goto L_08AE9608; } goto L_08AE9604; } L_08AE9604: aot_gpr_4 = (0u | 1u); goto L_08AE9608; L_08AE9608: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE9634; } goto L_08AE962C; } L_08AE962C: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE967C; } goto L_08AE9634; } L_08AE9634: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE9660; } goto L_08AE9654; } L_08AE9654: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE967C; } goto L_08AE9660; } L_08AE9660: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE967C; } goto L_08AE9678; } L_08AE9678: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE967C; L_08AE967C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE9694: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE96BCu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE96BCu) goto L_08AE96BC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE96BC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE96C8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE96C8u) goto L_08AE96C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE96C8: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(1060)))))); aot_gpr_5 = (aot_gpr_5 & 1u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AE96E0; } goto L_08AE96DC; } L_08AE96DC: aot_gpr_4 = (0u | 1u); goto L_08AE96E0; L_08AE96E0: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE970C; } goto L_08AE9704; } L_08AE9704: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE9754; } goto L_08AE970C; } L_08AE970C: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE9738; } goto L_08AE972C; } L_08AE972C: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE9754; } goto L_08AE9738; } L_08AE9738: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE9754; } goto L_08AE9750; } L_08AE9750: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE9754; L_08AE9754: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE976C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AE9794u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9794u) goto L_08AE9794; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9794: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE97A0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE97A0u) goto L_08AE97A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE97A0: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(615)))))); aot_gpr_5 = (aot_gpr_5 & 16u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AE97B8; } goto L_08AE97B4; } L_08AE97B4: aot_gpr_4 = (0u | 1u); goto L_08AE97B8; L_08AE97B8: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AE97E4; } goto L_08AE97DC; } L_08AE97DC: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE982C; } goto L_08AE97E4; } L_08AE97E4: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AE9810; } goto L_08AE9804; } L_08AE9804: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AE982C; } goto L_08AE9810; } L_08AE9810: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AE982C; } goto L_08AE9828; } L_08AE9828: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AE982C; L_08AE982C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE9844: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[6]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), std::bit_cast(ctx.fpr[24]), aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE9878u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9878u) goto L_08AE9878; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9878: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9884u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9884u) goto L_08AE9884; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9884: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15976))); aot_gpr_31 = (0x08AE9894u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 431u, 0x08B65C68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9894u) goto L_08AE9894; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9894: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_4 = (48972u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_20 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (49049u << 16u); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_gpr_31 = (0x08AE98B4u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); 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, ctx.gpr[6], ctx.gpr[7], ctx.gpr[28], aot_gpr_29, aot_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 == 0x08AE98B4u) goto L_08AE98B4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE98B4: aot_fpr_12 = ctx.fpr[22] - aot_fpr_20; { 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_14 = aot_fpr_20 + aot_fpr_12; ctx.fpr[24] = std::bit_cast(0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(208))); { const float fs = aot_fpr_14; const float ft = aot_fpr_13; 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; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(48))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(48))); ctx.fpr[15] = ctx.fpr[15] - ctx.fpr[16]; ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(52))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(52))); ctx.fpr[16] = ctx.fpr[16] - aot_fpr_12; aot_gpr_4 = (aot_gpr_16 | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_31 = (0x08AE98F8u); ctx.fpr[17] = std::bit_cast(std::bit_cast(ctx.fpr[24])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0152_entry, 152u, 611u, 0x08A66E08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE98F8u) goto L_08AE98F8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE98F8: aot_gpr_4 = (ctx.gpr[28] + static_cast(7768)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); ctx.gpr[6] = (16256u << 16u); aot_fpr_13 = std::bit_cast(ctx.gpr[6]); ctx.gpr[6] = (0u | 23u); aot_gpr_31 = (0x08AE9914u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0128_entry, 128u, 503u, 0x08A05F80u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9914u) goto L_08AE9914; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9914: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[6]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); ctx.fpr[24] = std::bit_cast(aot_run_words[2]); aot_gpr_16 = aot_run_words[3]; aot_gpr_17 = aot_run_words[4]; aot_gpr_31 = aot_run_words[5]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE9938: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[10]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[22], ctx.gpr[23], ctx.gpr[30], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(4), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); ctx.gpr[22] = (2236u << 16u); ctx.gpr[30] = (aot_gpr_4 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_5); ctx.gpr[18] = (ctx.gpr[22] + static_cast(29704)); aot_gpr_4 = (ctx.gpr[30] | 0u); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AE9988u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9988u) goto L_08AE9988; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9988: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.gpr[21] = (0u + static_cast(-1)); ctx.gpr[23] = (0u + static_cast(-1)); ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); aot_gpr_4 = (aot_gpr_17 << 5u); ctx.gpr[19] = (0u + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 6u); ctx.gpr[19] = (ctx.gpr[19] + aot_gpr_4); aot_gpr_4 = (aot_gpr_17 | 0u); goto L_08AE99B0; L_08AE99B0: aot_gpr_17 = (ctx.gpr[20] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(-2080)); if (branch_taken) { goto L_08AE9A48; } goto L_08AE99BC; } L_08AE99BC: { const bool branch_taken = ctx.gpr[21] != ctx.gpr[23]; if (branch_taken) { goto L_08AE9A48; } goto L_08AE99C4; } L_08AE99C4: { const bool branch_taken = static_cast(aot_gpr_17) < 0; ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); if (branch_taken) { goto L_08AE99E0; } goto L_08AE99CC; } L_08AE99CC: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(8))); aot_gpr_4 = (static_cast(aot_gpr_17) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); goto L_08AE99E8; } goto L_08AE99E0; L_08AE99E0: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AE9A08; } goto L_08AE99E8; } L_08AE99E8: aot_gpr_4 = (aot_gpr_4 + aot_gpr_17); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 & 128u); if (aot_gpr_4 == 0u) { aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); goto L_08AE9A04; } goto L_08AE99FC; L_08AE99FC: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AE9A08; } goto L_08AE9A04; } L_08AE9A04: aot_gpr_16 = (aot_gpr_16 + ctx.gpr[19]); goto L_08AE9A08; L_08AE9A08: { const bool branch_taken = aot_gpr_16 == 0u; if (branch_taken) { goto L_08AE9A40; } goto L_08AE9A10; } L_08AE9A10: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(29704))); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(ctx.gpr[18] + static_cast(4), aot_run_words); aot_fpr_13 = std::bit_cast(aot_run_words[0]); aot_fpr_14 = std::bit_cast(aot_run_words[1]); ctx.fpr[15] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x08AE9A28u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 788u, 0x08AAF8F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9A28u) goto L_08AE9A28; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9A28: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AE9A40; } goto L_08AE9A30; } L_08AE9A30: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9A3Cu); aot_gpr_5 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0218_entry, 218u, 139u, 0x08B6CC28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9A3Cu) goto L_08AE9A3C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9A3C: ctx.gpr[21] = (ctx.gpr[2] | 0u); goto L_08AE9A40; L_08AE9A40: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_gpr_17 | 0u); if (branch_taken) { goto L_08AE99B0; } goto L_08AE9A48; } L_08AE9A48: aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(29704), ctx.gpr[21]); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_4 = (ctx.gpr[30] | 0u); aot_gpr_31 = (0x08AE9A5Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9A5Cu) goto L_08AE9A5C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9A5C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[10]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(4), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; ctx.gpr[20] = aot_run_words[4]; ctx.gpr[21] = aot_run_words[5]; ctx.gpr[22] = aot_run_words[6]; ctx.gpr[23] = aot_run_words[7]; ctx.gpr[30] = aot_run_words[8]; aot_gpr_31 = aot_run_words[9]; } jump_target = aot_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_08AE9A90: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[5]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[19] = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x08AE9AC4u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9AC4u) goto L_08AE9AC4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9AC4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9AD0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9AD0u) goto L_08AE9AD0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9AD0: aot_gpr_17 = (ctx.gpr[2] | 0u); { const bool branch_taken = aot_gpr_17 == 0u; if (branch_taken) { goto L_08AE9B04; } goto L_08AE9ADC; } L_08AE9ADC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(688))); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_5 = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08AE9AFC; } goto L_08AE9AE8; } L_08AE9AE8: aot_gpr_31 = (0x08AE9AF0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0218_entry, 218u, 139u, 0x08B6CC28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9AF0u) goto L_08AE9AF0; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9AF0: aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), ctx.gpr[2]); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(688), 0u); if (branch_taken) { goto L_08AE9B04; } goto L_08AE9AFC; } L_08AE9AFC: aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); goto L_08AE9B04; L_08AE9B04: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x08AE9B14u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9B14u) goto L_08AE9B14; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9B14: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[5]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; aot_gpr_31 = aot_run_words[4]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE9B34: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{std::bit_cast(aot_fpr_20), aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_fpr_20 = std::bit_cast(0u); aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE9B68u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9B68u) goto L_08AE9B68; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9B68: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9B74u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9B74u) goto L_08AE9B74; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9B74: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (0u + static_cast(-497)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_4 = (aot_gpr_4 | 80u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(72), aot_gpr_4); aot_gpr_5 = (32u << 16u); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(72), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(636), std::bit_cast(aot_fpr_20)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08AE9C8C; } goto L_08AE9BA8; } L_08AE9BA8: aot_gpr_17 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AE9BB4u); aot_gpr_4 = (aot_gpr_17 + static_cast(944)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 420u, 0x08B0DB74u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9BB4u) goto L_08AE9BB4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9BB4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); aot_gpr_5 = (0u + static_cast(-943)); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08AE9C64; } goto L_08AE9BC4; } L_08AE9BC4: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 12u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AE9BD8u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 310u, 0x088316CCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9BD8u) goto L_08AE9BD8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9BD8: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 13u); ctx.gpr[6] = (0u | 6u); aot_gpr_31 = (0x08AE9BECu); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 310u, 0x088316CCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9BECu) goto L_08AE9BEC; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9BEC: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 18u); ctx.gpr[6] = (0u | 0u); aot_gpr_31 = (0x08AE9C00u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C00u) goto L_08AE9C00; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C00: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 19u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AE9C14u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C14u) goto L_08AE9C14; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C14: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 10u); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AE9C28u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C28u) goto L_08AE9C28; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C28: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 8u); ctx.gpr[6] = (0u | 3u); aot_gpr_31 = (0x08AE9C3Cu); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C3Cu) goto L_08AE9C3C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C3C: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 11u); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AE9C50u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C50u) goto L_08AE9C50; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C50: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 9u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AE9C64u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9C64u) goto L_08AE9C64; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9C64: aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(636), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store16(aot_gpr_17 + static_cast(666), static_cast(0u)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(1653)))))); aot_gpr_5 = (0u + static_cast(-8)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(1653), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_17 + static_cast(1653)))))); aot_gpr_5 = (0u + static_cast(-9)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(1653), static_cast(aot_gpr_4)); goto L_08AE9C8C; L_08AE9C8C: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(613)))))); aot_gpr_5 = (0u + static_cast(-17)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(613), 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 = (0u + static_cast(-65)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(613), 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_5 = (0u + static_cast(-33)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(618), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); aot_gpr_16 = aot_run_words[1]; aot_gpr_17 = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AE9CD8: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AE9D00u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9D00u) goto L_08AE9D00; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9D00: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9D0Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9D0Cu) goto L_08AE9D0C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9D0C: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); } aot_gpr_4 = (16968u << 16u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), std::bit_cast(aot_fpr_12)); aot_fpr_12 = aot_fpr_13 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), std::bit_cast(aot_fpr_12)); aot_fpr_12 = aot_fpr_14 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), std::bit_cast(aot_fpr_12)); { 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); } aot_gpr_4 = (ctx.gpr[2] + static_cast(112)); { 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); } ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(16), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AE9D5C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AE9D84u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9D84u) goto L_08AE9D84; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9D84: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9D90u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9D90u) goto L_08AE9D90; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9D90: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); } aot_gpr_4 = (16968u << 16u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / ctx.fpr[15]; aot_fpr_13 = aot_fpr_13 / ctx.fpr[15]; aot_fpr_14 = aot_fpr_14 / ctx.fpr[15]; aot_gpr_31 = (0x08AE9DB8u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0152_entry, 152u, 537u, 0x08A6669Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9DB8u) goto L_08AE9DB8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9DB8: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AE9DD0: aot_gpr_29 = (aot_gpr_29 + static_cast(-64)); { const std::uint32_t aot_run_words[10]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[26]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[19] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AE9E1Cu); ctx.gpr[7] = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9E1Cu) goto L_08AE9E1C; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9E1C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AE9E28u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9E28u) goto L_08AE9E28; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9E28: ctx.gpr[20] = (ctx.gpr[2] | 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(24))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<0u>(aot_gpr_4); { const float vfpu_constant = std::bit_cast(0x3FC90FDBu); const float vfpu_value[4]{vfpu_constant, vfpu_constant, vfpu_constant, vfpu_constant}; ctx.write_vfpu_vector_with_destination_prefix_ct<32u, 1u>(vfpu_value); } ctx.execute_vfpu_unary_ct<0u, 0u, 1u, 5u>(); ctx.execute_vfpu_unary_ct<64u, 0u, 1u, 23u>(); ctx.execute_vfpu_vec3_ct<0u, 64u, 32u, 1u, 2u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<0u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (17204u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_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_gpr_4 = (16457u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / ctx.fpr[22]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(16))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(20))); ctx.fpr[24] = std::bit_cast(0u); aot_gpr_4 = (17332u << 16u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(ctx.fpr[24])) && aot_fpr_12 == ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); ctx.fpr[26] = std::bit_cast(aot_gpr_4); if (branch_taken) { goto L_08AE9EAC; } goto L_08AE9E94; } L_08AE9E94: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_13) || std::isnan(ctx.fpr[24])) && aot_fpr_13 == ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9EAC; } goto L_08AE9EA4; } L_08AE9EA4: { const bool branch_taken = 0u == 0u; { const float fs = ctx.fpr[24]; 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; } if (branch_taken) { goto L_08AE9EB8; } goto L_08AE9EAC; } L_08AE9EAC: aot_gpr_31 = (0x08AE9EB4u); 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 == 0x08AE9EB4u) goto L_08AE9EB4; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9EB4: { const float fs = ctx.fpr[0]; 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; } goto L_08AE9EB8; L_08AE9EB8: aot_fpr_12 = aot_fpr_12 / ctx.fpr[22]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(8))); 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[24])) && aot_fpr_12 == ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[20] + static_cast(40))); if (branch_taken) { goto L_08AE9EF8; } goto L_08AE9ED8; } L_08AE9ED8: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_13) || std::isnan(ctx.fpr[24])) && aot_fpr_13 == ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9EF8; } goto L_08AE9EE8; } L_08AE9EE8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); { const bool branch_taken = 0u == 0u; { const float fs = ctx.fpr[24]; const float ft = aot_fpr_20; 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 (branch_taken) { goto L_08AE9F0C; } goto L_08AE9EF8; } L_08AE9EF8: aot_gpr_31 = (0x08AE9F00u); 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 == 0x08AE9F00u) goto L_08AE9F00; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9F00: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); { const float fs = ctx.fpr[0]; const float ft = aot_fpr_20; 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; } goto L_08AE9F0C; L_08AE9F0C: ctx.fpr[22] = aot_fpr_20 / ctx.fpr[22]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), std::bit_cast(ctx.fpr[22])); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] < ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9F30; } goto L_08AE9F24; } L_08AE9F24: aot_fpr_14 = ctx.fpr[22] + ctx.fpr[26]; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), std::bit_cast(aot_fpr_14)); if (branch_taken) { goto L_08AE9F48; } goto L_08AE9F30; } L_08AE9F30: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[22] <= ctx.fpr[26])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9F48; } goto L_08AE9F40; } L_08AE9F40: aot_fpr_14 = ctx.fpr[22] - ctx.fpr[26]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), std::bit_cast(aot_fpr_14)); goto L_08AE9F48; L_08AE9F48: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9F64; } goto L_08AE9F58; } L_08AE9F58: aot_fpr_12 = aot_fpr_12 + ctx.fpr[26]; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08AE9F7C; } goto L_08AE9F64; } L_08AE9F64: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= ctx.fpr[26])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9F7C; } goto L_08AE9F74; } L_08AE9F74: aot_fpr_12 = aot_fpr_12 - ctx.fpr[26]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), std::bit_cast(aot_fpr_12)); goto L_08AE9F7C; L_08AE9F7C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < ctx.fpr[24])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9F98; } goto L_08AE9F8C; } L_08AE9F8C: aot_fpr_12 = aot_fpr_13 + ctx.fpr[26]; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_08AE9FB0; } goto L_08AE9F98; } L_08AE9F98: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= ctx.fpr[26])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AE9FB0; } goto L_08AE9FA8; } L_08AE9FA8: aot_fpr_12 = aot_fpr_13 - ctx.fpr[26]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), std::bit_cast(aot_fpr_12)); goto L_08AE9FB0; L_08AE9FB0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(4), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(8), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AE9FD8u); ctx.gpr[6] = (0u | 3u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AE9FD8u) goto L_08AE9FD8; AOT_REGCACHE_SYNC_OUT(); return; L_08AE9FD8: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[10]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(16), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); ctx.fpr[24] = std::bit_cast(aot_run_words[2]); ctx.fpr[26] = std::bit_cast(aot_run_words[3]); aot_gpr_16 = aot_run_words[4]; aot_gpr_17 = aot_run_words[5]; ctx.gpr[18] = aot_run_words[6]; ctx.gpr[19] = aot_run_words[7]; ctx.gpr[20] = aot_run_words[8]; aot_gpr_31 = aot_run_words[9]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(64)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEA00C: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(32), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEA034u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA034u) goto L_08AEA034; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA034: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA040u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA040u) goto L_08AEA040; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA040: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(8))); aot_gpr_4 = (16457u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); aot_fpr_14 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_14; 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 = (17204u << 16u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const float fs = aot_fpr_13; const float ft = aot_fpr_14; 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_fpr_13 = aot_fpr_13 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), std::bit_cast(aot_fpr_13)); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(12))); { const float fs = ctx.fpr[16]; const float ft = aot_fpr_14; 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 = aot_fpr_14 / ctx.fpr[15]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), std::bit_cast(aot_fpr_14)); 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 = (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); } aot_gpr_31 = (0x08AEA0A0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 923u, 0x0885FA28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA0A0u) goto L_08AEA0A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA0A0: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(16), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x08AEA0B4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA0B4u) goto L_08AEA0B4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA0B4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(32), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA0CC: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_20), aot_gpr_16, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEA0F0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA0F0u) goto L_08AEA0F0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA0F0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA0FCu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA0FCu) goto L_08AEA0FC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA0FC: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_4 = (aot_gpr_4 + static_cast(272)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(0)))))); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(4))); aot_gpr_4 = (aot_gpr_16 + aot_gpr_5); ctx.gpr[6] = (16256u << 16u); aot_fpr_20 = std::bit_cast(ctx.gpr[6]); aot_gpr_5 = (0u | 9u); ctx.gpr[6] = (0u | 178u); jump_target = ctx.gpr[7]; aot_gpr_31 = (0x08AEA12Cu); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); 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 == 0x08AEA12Cu) goto L_08AEA12C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA12C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_5 = (aot_gpr_4 + static_cast(272)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_4 = (aot_gpr_16 + aot_gpr_4); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); aot_gpr_5 = (0u | 11u); ctx.gpr[6] = (0u | 174u); jump_target = ctx.gpr[7]; aot_gpr_31 = (0x08AEA150u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); 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 == 0x08AEA150u) goto L_08AEA150; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA150: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); aot_gpr_16 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA168: aot_gpr_29 = (aot_gpr_29 + static_cast(-64)); { const std::uint32_t aot_run_words[11]{std::bit_cast(aot_fpr_20), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[22], ctx.gpr[23], ctx.gpr[30], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(8), aot_run_words); } ctx.gpr[6] = (aot_gpr_4 + static_cast(16)); ctx.gpr[23] = (2236u << 16u); ctx.gpr[18] = (ctx.gpr[23] + static_cast(29704)); ctx.gpr[22] = (0u | 1u); aot_gpr_5 = (aot_gpr_4 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), ctx.gpr[6]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_5); aot_gpr_4 = (aot_gpr_5 | 0u); aot_gpr_5 = (ctx.gpr[6] | 0u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AEA1C8u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA1C8u) goto L_08AEA1C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA1C8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_17 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.gpr[21] = (0u + static_cast(-1)); ctx.gpr[30] = (0u | 2u); aot_fpr_20 = std::bit_cast(0u); ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); aot_gpr_4 = (aot_gpr_17 << 5u); ctx.gpr[19] = (0u + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 << 6u); ctx.gpr[19] = (ctx.gpr[19] + aot_gpr_4); aot_gpr_4 = (aot_gpr_17 | 0u); goto L_08AEA1F4; L_08AEA1F4: aot_gpr_17 = (ctx.gpr[20] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(-2080)); if (branch_taken) { goto L_08AEA2E8; } goto L_08AEA200; } L_08AEA200: aot_gpr_4 = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[21] != aot_gpr_4; if (branch_taken) { goto L_08AEA2E8; } goto L_08AEA20C; } L_08AEA20C: { const bool branch_taken = static_cast(aot_gpr_17) < 0; ctx.gpr[20] = (aot_gpr_17 + static_cast(-1)); if (branch_taken) { goto L_08AEA228; } goto L_08AEA214; } L_08AEA214: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(8))); aot_gpr_4 = (static_cast(aot_gpr_17) < static_cast(aot_gpr_4) ? 1u : 0u); if (aot_gpr_4 != 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); goto L_08AEA230; } goto L_08AEA228; L_08AEA228: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AEA250; } goto L_08AEA230; } L_08AEA230: aot_gpr_4 = (aot_gpr_4 + aot_gpr_17); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_gpr_4 & 128u); if (aot_gpr_4 == 0u) { aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(0))); goto L_08AEA24C; } goto L_08AEA244; L_08AEA244: { const bool branch_taken = 0u == 0u; aot_gpr_16 = (0u | 0u); if (branch_taken) { goto L_08AEA250; } goto L_08AEA24C; } L_08AEA24C: aot_gpr_16 = (aot_gpr_16 + ctx.gpr[19]); goto L_08AEA250; L_08AEA250: { const bool branch_taken = aot_gpr_16 == 0u; if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA258; } L_08AEA258: aot_gpr_31 = (0x08AEA260u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B01E00, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0191_entry, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA260u) goto L_08AEA260; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA260: { const bool branch_taken = ctx.gpr[2] == ctx.gpr[22]; if (branch_taken) { goto L_08AEA278; } goto L_08AEA268; } L_08AEA268: aot_gpr_31 = (0x08AEA270u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B01E00, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0191_entry, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA270u) goto L_08AEA270; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA270: { const bool branch_taken = ctx.gpr[2] != ctx.gpr[30]; if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA278; } L_08AEA278: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(636))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(aot_fpr_20)) && aot_fpr_12 == aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA28C; } L_08AEA28C: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(16))); if (aot_gpr_5 == aot_gpr_4) { aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); goto L_08AEA2A8; } goto L_08AEA29C; L_08AEA29C: { const bool branch_taken = static_cast(aot_gpr_4) >= 0; if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA2A4; } L_08AEA2A4: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); goto L_08AEA2A8; L_08AEA2A8: { const bool branch_taken = aot_gpr_4 != ctx.gpr[22]; if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA2B0; } L_08AEA2B0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[23] + static_cast(29704))); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(ctx.gpr[18] + static_cast(4), aot_run_words); aot_fpr_13 = std::bit_cast(aot_run_words[0]); aot_fpr_14 = std::bit_cast(aot_run_words[1]); ctx.fpr[15] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x08AEA2C8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0170_entry, 170u, 788u, 0x08AAF8F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA2C8u) goto L_08AEA2C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA2C8: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_08AEA2E0; } goto L_08AEA2D0; } L_08AEA2D0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA2DCu); aot_gpr_5 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0218_entry, 218u, 139u, 0x08B6CC28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA2DCu) goto L_08AEA2DC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA2DC: ctx.gpr[21] = (ctx.gpr[2] | 0u); goto L_08AEA2E0; L_08AEA2E0: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (aot_gpr_17 | 0u); if (branch_taken) { goto L_08AEA1F4; } goto L_08AEA2E8; } L_08AEA2E8: aot_mem.aot_direct_store32(ctx.gpr[23] + static_cast(29704), ctx.gpr[21]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_gpr_31 = (0x08AEA2FCu); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA2FCu) goto L_08AEA2FC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA2FC: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[11]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(8), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); aot_gpr_16 = aot_run_words[1]; aot_gpr_17 = aot_run_words[2]; ctx.gpr[18] = aot_run_words[3]; ctx.gpr[19] = aot_run_words[4]; ctx.gpr[20] = aot_run_words[5]; ctx.gpr[21] = aot_run_words[6]; ctx.gpr[22] = aot_run_words[7]; ctx.gpr[23] = aot_run_words[8]; ctx.gpr[30] = aot_run_words[9]; aot_gpr_31 = aot_run_words[10]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(64)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEA334: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEA358u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA358u) goto L_08AEA358; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA358: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA364u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA364u) goto L_08AEA364; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA364: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(944)); aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 1u); aot_gpr_31 = (0x08AEA37Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 377u, 0x08B0D904u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA37Cu) goto L_08AEA37C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA37C: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 19u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AEA390u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA390u) goto L_08AEA390; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA390: aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_5 = (0u | 1u); aot_gpr_31 = (0x08AEA3A0u); ctx.gpr[6] = (0u | 3u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 377u, 0x08B0D904u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA3A0u) goto L_08AEA3A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA3A0: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 19u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AEA3B4u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA3B4u) goto L_08AEA3B4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA3B4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA3CC: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEA3ECu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA3ECu) goto L_08AEA3EC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA3EC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA3F8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA3F8u) goto L_08AEA3F8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA3F8: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x08AEA404u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B01E00, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0191_entry, 191u, 504u, 0x08B01E00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA404u) goto L_08AEA404; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA404: aot_gpr_4 = (0u | 3u); { const bool branch_taken = ctx.gpr[2] != aot_gpr_4; if (branch_taken) { goto L_08AEA420; } goto L_08AEA410; } L_08AEA410: aot_gpr_4 = (15969u << 16u); aot_gpr_4 = (aot_gpr_4 | 18350u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1640), std::bit_cast(aot_fpr_12)); goto L_08AEA420; L_08AEA420: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AEA434: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA45Cu); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA45Cu) goto L_08AEA45C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA45C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA468u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA468u) goto L_08AEA468; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA468: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(618)))))); if (branch_taken) { goto L_08AEA484; } goto L_08AEA478; } L_08AEA478: aot_gpr_4 = (aot_gpr_4 | 1u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(618), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEA490; } goto L_08AEA484; } L_08AEA484: ctx.gpr[6] = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(618), static_cast(aot_gpr_4)); goto L_08AEA490; L_08AEA490: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA4A8: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[6]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_17 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEA4E0u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA4E0u) goto L_08AEA4E0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA4E0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA4ECu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA4ECu) goto L_08AEA4EC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA4EC: aot_gpr_17 = (ctx.gpr[2] | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(ctx.gpr[18] + static_cast(4), aot_run_words); ctx.fpr[22] = std::bit_cast(aot_run_words[0]); aot_fpr_20 = std::bit_cast(aot_run_words[1]); aot_fpr_12 = std::bit_cast(aot_run_words[2]); } aot_gpr_4 = (49864u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(aot_fpr_13)) && aot_fpr_12 == aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (50042u << 16u); if (branch_taken) { goto L_08AEA528; } goto L_08AEA514; } L_08AEA514: aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_08AEA53C; } goto L_08AEA528; L_08AEA528: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_gpr_31 = (0x08AEA534u); aot_fpr_13 = 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_0035_entry, 35u, 514u, 0x088933E8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA534u) goto L_08AEA534; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA534: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_08AEA53C; L_08AEA53C: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_31 = (0x08AEA554u); ctx.gpr[6] = (0u | 1u); goto L_08AEBC84; L_08AEA554: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[6]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); aot_gpr_16 = aot_run_words[2]; aot_gpr_17 = aot_run_words[3]; ctx.gpr[18] = aot_run_words[4]; aot_gpr_31 = aot_run_words[5]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEA578: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AEA5A0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA5A0u) goto L_08AEA5A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA5A0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA5ACu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA5ACu) goto L_08AEA5AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA5AC: aot_gpr_4 = (0u | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(618)))))); aot_gpr_5 = (aot_gpr_5 & 32u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AEA5C4; } goto L_08AEA5C0; } L_08AEA5C0: aot_gpr_4 = (0u | 1u); goto L_08AEA5C4; L_08AEA5C4: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AEA5F0; } goto L_08AEA5E8; } L_08AEA5E8: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEA638; } goto L_08AEA5F0; } L_08AEA5F0: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AEA61C; } goto L_08AEA610; } L_08AEA610: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEA638; } goto L_08AEA61C; } L_08AEA61C: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEA638; } goto L_08AEA634; } L_08AEA634: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AEA638; L_08AEA638: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA650: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA678u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA678u) goto L_08AEA678; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA678: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA684u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA684u) goto L_08AEA684; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA684: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); 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(ctx.gpr[2] + static_cast(632), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(ctx.gpr[2] + static_cast(636), std::bit_cast(aot_fpr_12)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA6B0: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEA6E0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA6E0u) goto L_08AEA6E0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA6E0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA6ECu); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA6ECu) goto L_08AEA6EC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA6EC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(632))); 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_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEA70Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA70Cu) goto L_08AEA70C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA70C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEA728: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA750u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA750u) goto L_08AEA750; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA750: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA75Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA75Cu) goto L_08AEA75C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA75C: aot_gpr_5 = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_5 + static_cast(618)))))); if (branch_taken) { goto L_08AEA778; } goto L_08AEA76C; } L_08AEA76C: aot_gpr_4 = (aot_gpr_4 | 128u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(618), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEA784; } goto L_08AEA778; } L_08AEA778: ctx.gpr[6] = (0u + static_cast(-129)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store8(aot_gpr_5 + static_cast(618), static_cast(aot_gpr_4)); goto L_08AEA784; L_08AEA784: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEA79C: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[8]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[19] = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA7D8u); ctx.gpr[7] = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA7D8u) goto L_08AEA7D8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA7D8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEA7E4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA7E4u) goto L_08AEA7E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA7E4: ctx.gpr[18] = (ctx.gpr[2] | 0u); aot_gpr_17 = (0u | 5u); aot_gpr_4 = (16153u << 16u); aot_gpr_4 = (aot_gpr_4 | 39322u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_gpr_16 = (ctx.gpr[18] + static_cast(944)); aot_gpr_4 = (17152u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); goto L_08AEA804; L_08AEA804: aot_gpr_31 = (0x08AEA80Cu); ctx.gpr[20] = (0u | 0u); 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, ctx.gpr[6], ctx.gpr[7], ctx.gpr[28], aot_gpr_29, aot_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 == 0x08AEA80Cu) goto L_08AEA80C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA80C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= ctx.fpr[22])) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { ctx.gpr[20] = (0u | 1u); goto L_08AEA81C; } goto L_08AEA81C; L_08AEA81C: aot_gpr_4 = (ctx.gpr[20] & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA828; } L_08AEA828: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(4))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEA83Cu); 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_0194_entry, 194u, 388u, 0x08B0D978u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA83Cu) goto L_08AEA83C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA83C: aot_gpr_4 = (aot_gpr_17 + static_cast(-5)); aot_gpr_5 = (aot_gpr_4 < static_cast(13) ? 1u : 0u); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA84C; } L_08AEA84C: aot_gpr_4 = (aot_gpr_4 << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + aot_gpr_4); ctx.gpr[1] = (aot_mem.aot_direct_load32(ctx.gpr[1] + static_cast(17064))); jump_target = ctx.gpr[1]; local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEA864: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 18u); ctx.gpr[6] = (0u | 0u); aot_gpr_31 = (0x08AEA878u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA878u) goto L_08AEA878; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA878: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA880; } L_08AEA880: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 19u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AEA894u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA894u) goto L_08AEA894; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA894: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA89C; } L_08AEA89C: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 10u); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA8B0u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA8B0u) goto L_08AEA8B0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA8B0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA8B8; } L_08AEA8B8: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 8u); ctx.gpr[6] = (0u | 3u); aot_gpr_31 = (0x08AEA8CCu); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA8CCu) goto L_08AEA8CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA8CC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA8D4; } L_08AEA8D4: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 11u); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEA8E8u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA8E8u) goto L_08AEA8E8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA8E8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA8F0; } L_08AEA8F0: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 9u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AEA904u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 341u, 0x088318B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA904u) goto L_08AEA904; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA904: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA90C; } L_08AEA90C: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 15u); ctx.gpr[6] = (0u | 0u); aot_gpr_31 = (0x08AEA920u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA920u) goto L_08AEA920; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA920: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA928; } L_08AEA928: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 14u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AEA93Cu); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA93Cu) goto L_08AEA93C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA93C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA944; } L_08AEA944: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 17u); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEA958u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA958u) goto L_08AEA958; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA958: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA960; } L_08AEA960: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 16u); ctx.gpr[6] = (0u | 3u); aot_gpr_31 = (0x08AEA974u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA974u) goto L_08AEA974; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA974: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA97C; } L_08AEA97C: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 20u); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEA990u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA990u) goto L_08AEA990; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA990: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA998; } L_08AEA998: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 12u); ctx.gpr[6] = (0u | 5u); aot_gpr_31 = (0x08AEA9ACu); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA9ACu) goto L_08AEA9AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA9AC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEA9C8; } goto L_08AEA9B4; } L_08AEA9B4: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (0u | 13u); ctx.gpr[6] = (0u | 6u); aot_gpr_31 = (0x08AEA9C8u); ctx.gpr[7] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0011_entry, 11u, 322u, 0x08831790u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEA9C8u) goto L_08AEA9C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEA9C8: aot_gpr_17 = (aot_gpr_17 + static_cast(1)); aot_gpr_4 = (static_cast(aot_gpr_17) < 18 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_08AEA804; } goto L_08AEA9D8; } L_08AEA9D8: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[8]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); aot_gpr_16 = aot_run_words[2]; aot_gpr_17 = aot_run_words[3]; ctx.gpr[18] = aot_run_words[4]; ctx.gpr[19] = aot_run_words[5]; ctx.gpr[20] = aot_run_words[6]; aot_gpr_31 = aot_run_words[7]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEAA04: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AEAA2Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAA2Cu) goto L_08AEAA2C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAA2C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEAA38u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAA38u) goto L_08AEAA38; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAA38: ctx.gpr[6] = (ctx.gpr[2] | 0u); aot_gpr_4 = (0u | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[6] + static_cast(619)))))); ctx.gpr[7] = (aot_gpr_5 & 2u); { const bool branch_taken = ctx.gpr[7] == 0u; if (branch_taken) { goto L_08AEAA60; } goto L_08AEAA50; } L_08AEAA50: aot_gpr_4 = (0u | 1u); ctx.gpr[7] = (0u + static_cast(-3)); aot_gpr_5 = (aot_gpr_5 & ctx.gpr[7]); aot_mem.aot_direct_store8(ctx.gpr[6] + static_cast(619), static_cast(aot_gpr_5)); goto L_08AEAA60; L_08AEAA60: aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AEAA8C; } goto L_08AEAA84; } L_08AEAA84: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEAAD4; } goto L_08AEAA8C; } L_08AEAA8C: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AEAAB8; } goto L_08AEAAAC; } L_08AEAAAC: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEAAD4; } goto L_08AEAAB8; } L_08AEAAB8: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEAAD4; } goto L_08AEAAD0; } L_08AEAAD0: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AEAAD4; L_08AEAAD4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEAAEC: aot_gpr_29 = (aot_gpr_29 + static_cast(-112)); { const std::uint32_t aot_run_words[6]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(84), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_31 = (0x08AEAB14u); aot_gpr_4 = (aot_gpr_29 + static_cast(48)); 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 == 0x08AEAB14u) goto L_08AEAB14; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAB14: aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[19] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); ctx.gpr[6] = (0u | 1u); aot_gpr_31 = (0x08AEAB34u); ctx.gpr[7] = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAB34u) goto L_08AEAB34; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAB34: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEAB40u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAB40u) goto L_08AEAB40; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAB40: ctx.gpr[20] = (ctx.gpr[2] | 0u); aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x08AEAB50u); aot_gpr_5 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0183_entry, 183u, 1035u, 0x08AE3F8Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAB50u) goto L_08AEAB50; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAB50: { 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); } 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); } aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[20] + static_cast(86)))))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(12))); aot_gpr_4 = (aot_gpr_29 + static_cast(16)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(32))); aot_fpr_12 = aot_fpr_14 - ctx.fpr[15]; ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); aot_fpr_13 = ctx.fpr[16] + ctx.fpr[15]; aot_fpr_14 = aot_fpr_14 + ctx.fpr[15]; aot_gpr_31 = (0x08AEAB98u); ctx.fpr[15] = ctx.fpr[16] - ctx.fpr[15]; if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_089D1B1C, 115u, 292u, 0x089D1B1Cu>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31, aot_fpr_12, aot_fpr_13, aot_fpr_14, ctx.fpr[15]); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0115_entry, 115u, 292u, 0x089D1B1Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAB98u) goto L_08AEAB98; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAB98: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); aot_gpr_5 = (std::bit_cast(aot_fpr_13)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(24))); ctx.gpr[6] = (std::bit_cast(aot_fpr_14)); { const std::uint32_t aot_run_words[3]{aot_gpr_4, aot_gpr_5, ctx.gpr[6]}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(48), aot_run_words); } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(28))); aot_gpr_4 = (std::bit_cast(ctx.fpr[15])); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(60), aot_gpr_4); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(48))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(ctx.fpr[16]), std::bit_cast(aot_fpr_13)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } ctx.gpr[6] = (aot_gpr_29 + static_cast(64)); ctx.gpr[20] = (aot_gpr_29 + static_cast(80)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_29 | 0u); ctx.gpr[7] = (ctx.gpr[20] | 0u); ctx.gpr[8] = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x08AEAC00u); ctx.gpr[9] = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 584u, 0x088631C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAC00u) goto L_08AEAC00; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAC00: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(36))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(40))); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_13), std::bit_cast(aot_fpr_14)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } ctx.gpr[7] = (aot_gpr_29 + static_cast(68)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_29 | 0u); ctx.gpr[6] = (ctx.gpr[20] | 0u); ctx.gpr[8] = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x08AEAC34u); ctx.gpr[9] = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 584u, 0x088631C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAC34u) goto L_08AEAC34; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAC34: 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_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(52))); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_13), std::bit_cast(aot_fpr_14)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } ctx.gpr[8] = (aot_gpr_29 + static_cast(72)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_29 | 0u); ctx.gpr[6] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x08AEAC68u); ctx.gpr[9] = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 584u, 0x088631C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAC68u) goto L_08AEAC68; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAC68: 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_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(60))); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_13), std::bit_cast(aot_fpr_14)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } ctx.gpr[9] = (aot_gpr_29 + static_cast(76)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_29 | 0u); ctx.gpr[6] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x08AEAC9Cu); ctx.gpr[8] = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 584u, 0x088631C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAC9Cu) goto L_08AEAC9C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAC9C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(68))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(4), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(8), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(76))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(12), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEACCCu); ctx.gpr[6] = (0u | 4u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEACCCu) goto L_08AEACCC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEACCC: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[6]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(84), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; ctx.gpr[20] = aot_run_words[4]; aot_gpr_31 = aot_run_words[5]; } jump_target = aot_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_08AEACF0: aot_gpr_29 = (aot_gpr_29 + static_cast(-288)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(268), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_17 = (2236u << 16u); aot_gpr_16 = (aot_gpr_17 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEAD1Cu); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAD1Cu) goto L_08AEAD1C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAD1C: aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEAD2Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAD2Cu) goto L_08AEAD2C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAD2C: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.gpr[6] = (0u | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[7] = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] == 0u; ctx.gpr[18] = (aot_gpr_16 & 255u); if (branch_taken) { goto L_08AEAD58; } goto L_08AEAD48; } L_08AEAD48: ctx.gpr[6] = (aot_gpr_5 << 2u); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[6] = (ctx.gpr[7] + ctx.gpr[6]); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[6] + static_cast(0))); goto L_08AEAD58; L_08AEAD58: ctx.gpr[6] = (aot_mem.aot_direct_load8(ctx.gpr[6] + static_cast(353))); ctx.gpr[6] = (static_cast(aot_gpr_16) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] != 0u; ctx.gpr[6] = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08AEADB0; } goto L_08AEAD68; } L_08AEAD68: ctx.gpr[8] = (aot_gpr_4 | 0u); aot_gpr_4 = (aot_gpr_29 + static_cast(4)); ctx.gpr[6] = (2232u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(16916)); ctx.gpr[8] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[8]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[8] == 0u; ctx.gpr[7] = (0u | 0u); if (branch_taken) { goto L_08AEAD94; } goto L_08AEAD84; } L_08AEAD84: aot_gpr_5 = (aot_gpr_5 << 2u); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (ctx.gpr[7] + aot_gpr_5); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(0))); goto L_08AEAD94; L_08AEAD94: aot_gpr_5 = (ctx.gpr[6] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load8(ctx.gpr[7] + static_cast(353))); aot_gpr_31 = (0x08AEADA4u); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0212_entry, 212u, 576u, 0x08B562D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEADA4u) goto L_08AEADA4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEADA4: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (aot_gpr_4 | 0u); goto L_08AEADB0; L_08AEADB0: ctx.gpr[6] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AEADCC; } goto L_08AEADBC; } L_08AEADBC: aot_gpr_4 = (aot_gpr_5 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEADCC; L_08AEADCC: aot_gpr_31 = (0x08AEADD4u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0167_entry, 167u, 764u, 0x08AA2FB4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEADD4u) goto L_08AEADD4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEADD4: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), ctx.gpr[2]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(548), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(1))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(549), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(2))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(550), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(3))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(551), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_5 = (0u | 0u); if (branch_taken) { goto L_08AEAE24; } goto L_08AEAE14; } L_08AEAE14: aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEAE24; L_08AEAE24: aot_gpr_4 = (aot_gpr_5 | 0u); aot_gpr_31 = (0x08AEAE30u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0167_entry, 167u, 774u, 0x08AA3070u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAE30u) goto L_08AEAE30; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAE30: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(264), ctx.gpr[2]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(264))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(552), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(1))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(553), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(2))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(554), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(3))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(555), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_16 << 24u); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 24u)); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(896), static_cast(aot_gpr_4)); aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(897), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(268), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(288)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEAE8C: aot_gpr_29 = (aot_gpr_29 + static_cast(-288)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(268), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_17 = (2236u << 16u); aot_gpr_16 = (aot_gpr_17 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEAEB8u); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAEB8u) goto L_08AEAEB8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAEB8: aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(4))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEAEC8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAEC8u) goto L_08AEAEC8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAEC8: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.gpr[6] = (0u | 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[7] = (static_cast(aot_gpr_5) < static_cast(aot_gpr_4) ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] == 0u; ctx.gpr[18] = (aot_gpr_16 & 255u); if (branch_taken) { goto L_08AEAEF4; } goto L_08AEAEE4; } L_08AEAEE4: ctx.gpr[6] = (aot_gpr_5 << 2u); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[6] = (ctx.gpr[7] + ctx.gpr[6]); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[6] + static_cast(0))); goto L_08AEAEF4; L_08AEAEF4: ctx.gpr[6] = (aot_mem.aot_direct_load8(ctx.gpr[6] + static_cast(354))); ctx.gpr[6] = (static_cast(aot_gpr_16) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] != 0u; ctx.gpr[6] = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08AEAF4C; } goto L_08AEAF04; } L_08AEAF04: ctx.gpr[8] = (aot_gpr_4 | 0u); aot_gpr_4 = (aot_gpr_29 + static_cast(4)); ctx.gpr[6] = (2232u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(16984)); ctx.gpr[8] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[8]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[8] == 0u; ctx.gpr[7] = (0u | 0u); if (branch_taken) { goto L_08AEAF30; } goto L_08AEAF20; } L_08AEAF20: aot_gpr_5 = (aot_gpr_5 << 2u); ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_5 = (ctx.gpr[7] + aot_gpr_5); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(0))); goto L_08AEAF30; L_08AEAF30: aot_gpr_5 = (ctx.gpr[6] | 0u); ctx.gpr[6] = (aot_mem.aot_direct_load8(ctx.gpr[7] + static_cast(354))); aot_gpr_31 = (0x08AEAF40u); ctx.gpr[7] = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0212_entry, 212u, 576u, 0x08B562D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAF40u) goto L_08AEAF40; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAF40: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (aot_gpr_4 | 0u); goto L_08AEAF4C; L_08AEAF4C: ctx.gpr[6] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AEAF68; } goto L_08AEAF58; } L_08AEAF58: aot_gpr_4 = (aot_gpr_5 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEAF68; L_08AEAF68: aot_gpr_31 = (0x08AEAF70u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0167_entry, 167u, 784u, 0x08AA312Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAF70u) goto L_08AEAF70; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAF70: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(260), ctx.gpr[2]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(260))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(548), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(1))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(549), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(2))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(550), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(3))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(551), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_17 + static_cast(86)))))); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (static_cast(aot_gpr_4) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_5 = (0u | 0u); if (branch_taken) { goto L_08AEAFC0; } goto L_08AEAFB0; } L_08AEAFB0: aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEAFC0; L_08AEAFC0: aot_gpr_4 = (aot_gpr_5 | 0u); aot_gpr_31 = (0x08AEAFCCu); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0167_entry, 167u, 794u, 0x08AA31E8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEAFCCu) goto L_08AEAFCC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEAFCC: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(264), ctx.gpr[2]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(264))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(552), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(1))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(553), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(2))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(554), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_29 + static_cast(3))); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(555), static_cast(aot_gpr_4)); aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(896), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_16 << 24u); aot_gpr_4 = (static_cast(static_cast(aot_gpr_4) >> 24u)); aot_mem.aot_direct_store8(aot_gpr_17 + static_cast(897), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(268), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(288)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEB028: aot_gpr_29 = (aot_gpr_29 + static_cast(-272)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(256), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB058u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB058u) goto L_08AEB058; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB058: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB064u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB064u) goto L_08AEB064; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB064: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(896)))))); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB07Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB07Cu) goto L_08AEB07C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB07C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(256), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(272)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEB098: aot_gpr_29 = (aot_gpr_29 + static_cast(-272)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(256), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB0C8u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB0C8u) goto L_08AEB0C8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB0C8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB0D4u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB0D4u) goto L_08AEB0D4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB0D4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(897)))))); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB0ECu); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB0ECu) goto L_08AEB0EC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB0EC: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(256), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(272)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEB108: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[18] = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB138u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB138u) goto L_08AEB138; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB138: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB144u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB144u) goto L_08AEB144; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB144: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[2] + static_cast(86)))))); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AEB168; } goto L_08AEB158; } L_08AEB158: aot_gpr_4 = (aot_gpr_5 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEB168; L_08AEB168: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(353))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB180u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB180u) goto L_08AEB180; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB180: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEB19C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[18] = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB1CCu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB1CCu) goto L_08AEB1CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB1CC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB1D8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB1D8u) goto L_08AEB1D8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB1D8: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[2] + static_cast(86)))))); ctx.gpr[6] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[6] = (static_cast(aot_gpr_5) < static_cast(ctx.gpr[6]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; aot_gpr_4 = (0u | 0u); if (branch_taken) { goto L_08AEB1FC; } goto L_08AEB1EC; } L_08AEB1EC: aot_gpr_4 = (aot_gpr_5 << 2u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(24))); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); goto L_08AEB1FC; L_08AEB1FC: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(354))); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB214u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB214u) goto L_08AEB214; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB214: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEB230: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEB254u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB254u) goto L_08AEB254; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB254: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB260u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB260u) goto L_08AEB260; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB260: aot_gpr_17 = (ctx.gpr[2] | 0u); aot_gpr_16 = (aot_gpr_17 + static_cast(944)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEB274u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 382u, 0x08B0D940u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB274u) goto L_08AEB274; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB274: aot_gpr_4 = (ctx.gpr[2] & 255u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEB2AC; } goto L_08AEB280; } L_08AEB280: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(1336))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEB2AC; } goto L_08AEB28C; } L_08AEB28C: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 0u); aot_gpr_31 = (0x08AEB29Cu); ctx.gpr[6] = (0u | 3u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 377u, 0x08B0D904u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB29Cu) goto L_08AEB29C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB29C: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(1336))); aot_gpr_4 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB2ACu); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 3u, 0x08B00014u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB2ACu) goto L_08AEB2AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB2AC: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB2C4: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(36), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEB2ECu); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB2ECu) goto L_08AEB2EC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB2EC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB2F8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB2F8u) goto L_08AEB2F8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB2F8: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); { const bool branch_taken = aot_gpr_5 == 0u; aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(864), aot_gpr_5); if (branch_taken) { goto L_08AEB344; } goto L_08AEB308; } L_08AEB308: ctx.gpr[7] = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[7] + static_cast(864))); aot_gpr_4 = (ctx.gpr[7] + static_cast(880)); { 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); } { const std::uint32_t vfpu_address = ctx.gpr[7] + 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 = ctx.gpr[7] + 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 = ctx.gpr[7] + 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 = ctx.gpr[7] + 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_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_4 = (ctx.gpr[7] | 0u); ctx.gpr[6] = (aot_gpr_29 | 0u); aot_gpr_31 = (0x08AEB344u); ctx.gpr[8] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 828u, 0x0893FA88u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB344u) goto L_08AEB344; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB344: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(36), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB35C: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEB37Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB37Cu) goto L_08AEB37C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB37C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB388u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB388u) goto L_08AEB388; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB388: aot_mem.aot_direct_store32(ctx.gpr[2] + static_cast(864), 0u); ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AEB3A0: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[18] = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB3D0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB3D0u) goto L_08AEB3D0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB3D0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB3DCu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB3DCu) goto L_08AEB3DC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB3DC: aot_gpr_31 = (0x08AEB3E4u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 198u, 0x08B00BC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB3E4u) goto L_08AEB3E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB3E4: aot_gpr_4 = (ctx.gpr[2] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEB41C; } goto L_08AEB3F0; } L_08AEB3F0: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(72))); aot_gpr_5 = (aot_gpr_5 & 14u); aot_gpr_5 = (aot_gpr_5 ^ 8u); 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; aot_gpr_5 = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08AEB41C; } goto L_08AEB40C; } L_08AEB40C: aot_gpr_31 = (0x08AEB414u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15960))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 636u, 0x08B66A10u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB414u) goto L_08AEB414; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB414: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), ctx.gpr[2]); if (branch_taken) { goto L_08AEB424; } goto L_08AEB41C; } L_08AEB41C: aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); goto L_08AEB424; L_08AEB424: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB434u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB434u) goto L_08AEB434; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB434: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEB450: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[18] = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB480u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB480u) goto L_08AEB480; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB480: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB48Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB48Cu) goto L_08AEB48C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB48C: aot_gpr_31 = (0x08AEB494u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 198u, 0x08B00BC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB494u) goto L_08AEB494; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB494: aot_gpr_4 = (ctx.gpr[2] | 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEB4CC; } goto L_08AEB4A0; } L_08AEB4A0: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(72))); aot_gpr_5 = (aot_gpr_5 & 14u); aot_gpr_5 = (aot_gpr_5 ^ 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; aot_gpr_5 = (aot_gpr_4 | 0u); if (branch_taken) { goto L_08AEB4CC; } goto L_08AEB4BC; } L_08AEB4BC: aot_gpr_31 = (0x08AEB4C4u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0218_entry, 218u, 139u, 0x08B6CC28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB4C4u) goto L_08AEB4C4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB4C4: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), ctx.gpr[2]); if (branch_taken) { goto L_08AEB4D4; } goto L_08AEB4CC; } L_08AEB4CC: aot_gpr_4 = (0u + static_cast(-1)); aot_mem.aot_direct_store32(aot_gpr_17 + static_cast(29704), aot_gpr_4); goto L_08AEB4D4; L_08AEB4D4: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x08AEB4E4u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB4E4u) goto L_08AEB4E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB4E4: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEB500: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEB528u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB528u) goto L_08AEB528; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB528: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15960))); aot_gpr_31 = (0x08AEB534u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 445u, 0x08B65D28u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB534u) goto L_08AEB534; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB534: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(76))); ctx.gpr[6] = (65504u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_gpr_5 = (aot_gpr_5 & ctx.gpr[6]); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_4 = (aot_gpr_4 << 21u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store32(ctx.gpr[2] + static_cast(76), aot_gpr_4); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB57C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEB5A4u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB5A4u) goto L_08AEB5A4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB5A4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB5B0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB5B0u) goto L_08AEB5B0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB5B0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(76))); ctx.gpr[6] = (65504u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_gpr_5 = (aot_gpr_5 & ctx.gpr[6]); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_4 = (aot_gpr_4 << 21u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store32(ctx.gpr[2] + static_cast(76), aot_gpr_4); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB5F8: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEB620u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB620u) goto L_08AEB620; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB620: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB62Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB62Cu) goto L_08AEB62C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB62C: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_17 + static_cast(4), aot_run_words); aot_fpr_12 = std::bit_cast(aot_run_words[0]); aot_fpr_13 = std::bit_cast(aot_run_words[1]); aot_fpr_14 = std::bit_cast(aot_run_words[2]); } { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_13), std::bit_cast(aot_fpr_14)}; aot_mem.aot_direct_store32_block(ctx.gpr[2] + static_cast(880), aot_run_words); } ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB65C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB68Cu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB68Cu) goto L_08AEB68C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB68C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB698u); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB698u) goto L_08AEB698; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB698: aot_gpr_31 = (0x08AEB6A0u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 203u, 0x08B00BF8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB6A0u) goto L_08AEB6A0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB6A0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15960))); aot_gpr_31 = (0x08AEB6ACu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 636u, 0x08B66A10u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB6ACu) goto L_08AEB6AC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB6AC: aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), ctx.gpr[2]); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEB6C0u); ctx.gpr[6] = (0u | 1u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB6C0u) goto L_08AEB6C0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB6C0: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEB6DC: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); { const std::uint32_t aot_run_words[5]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 3u); aot_gpr_31 = (0x08AEB70Cu); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB70Cu) goto L_08AEB70C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB70C: ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(8))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB720u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB720u) goto L_08AEB720; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB720: aot_gpr_5 = (ctx.gpr[2] | 0u); aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(ctx.fpr[22]) || std::isnan(aot_fpr_12)) && ctx.fpr[22] == aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(236))); if (branch_taken) { goto L_08AEB74C; } goto L_08AEB73C; } L_08AEB73C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_20) || std::isnan(aot_fpr_12)) && aot_fpr_20 == aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_08AEB758; } goto L_08AEB74C; } L_08AEB74C: aot_gpr_4 = (aot_gpr_4 | 1u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(236), aot_gpr_4); if (branch_taken) { goto L_08AEB764; } goto L_08AEB758; } L_08AEB758: ctx.gpr[6] = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[6]); aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(236), aot_gpr_4); goto L_08AEB764; L_08AEB764: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(352))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(188))); { const float fs = ctx.fpr[22]; const float ft = aot_fpr_12; 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_5 + static_cast(208), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(192))); { 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_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_5 + static_cast(212), std::bit_cast(aot_fpr_12)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[5]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); aot_gpr_16 = aot_run_words[2]; aot_gpr_17 = aot_run_words[3]; aot_gpr_31 = aot_run_words[4]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEB7A0: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEB7C0u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB7C0u) goto L_08AEB7C0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB7C0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB7CCu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB7CCu) goto L_08AEB7CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB7CC: aot_gpr_4 = (0u | 15000u); aot_mem.aot_direct_store16(ctx.gpr[2] + static_cast(558), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AEB7E8: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEB810u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB810u) goto L_08AEB810; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB810: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB81Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB81Cu) goto L_08AEB81C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB81C: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(1280)))))); aot_gpr_5 = (0u + static_cast(-3)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_5 = (aot_gpr_5 & 255u); aot_gpr_5 = (aot_gpr_5 & 1u); aot_gpr_5 = (aot_gpr_5 << 1u); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(ctx.gpr[2] + static_cast(1280), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB858: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEB878u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB878u) goto L_08AEB878; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB878: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB884u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB884u) goto L_08AEB884; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB884: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(80))); aot_gpr_31 = (0x08AEB890u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 190u, 0x08945304u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB890u) goto L_08AEB890; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB890: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AEB8A4: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AEB8CCu); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB8CCu) goto L_08AEB8CC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB8CC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB8D8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB8D8u) goto L_08AEB8D8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB8D8: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x08AEB8E4u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0183_entry, 183u, 1019u, 0x08AE3ED0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB8E4u) goto L_08AEB8E4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB8E4: aot_gpr_4 = (0u < ctx.gpr[2] ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AEB910; } goto L_08AEB908; } L_08AEB908: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEB958; } goto L_08AEB910; } L_08AEB910: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AEB93C; } goto L_08AEB930; } L_08AEB930: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEB958; } goto L_08AEB93C; } L_08AEB93C: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEB958; } goto L_08AEB954; } L_08AEB954: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AEB958; L_08AEB958: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEB970: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_5 = (aot_gpr_16 + static_cast(16)); aot_gpr_17 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_17 + static_cast(29704)); aot_gpr_31 = (0x08AEB998u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB998u) goto L_08AEB998; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB998: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEB9A4u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB9A4u) goto L_08AEB9A4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB9A4: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x08AEB9B0u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0183_entry, 183u, 1019u, 0x08AE3ED0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEB9B0u) goto L_08AEB9B0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEB9B0: aot_gpr_4 = (0u < ctx.gpr[2] ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_4 = (aot_gpr_4 & 255u); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(524))); aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); aot_gpr_4 = (aot_gpr_4 ^ aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); { const bool branch_taken = aot_gpr_5 != 0u; aot_gpr_4 = (0u < aot_gpr_4 ? 1u : 0u); if (branch_taken) { goto L_08AEB9DC; } goto L_08AEB9D4; } L_08AEB9D4: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEBA24; } goto L_08AEB9DC; } L_08AEB9DC: aot_gpr_5 = (aot_gpr_16 + static_cast(518)); ctx.gpr[6] = (aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0))); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 9 ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); aot_mem.aot_direct_store16(aot_gpr_5 + static_cast(0), static_cast(ctx.gpr[6])); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(521))); { const bool branch_taken = ctx.gpr[7] == 0u; aot_gpr_5 = (0u < aot_gpr_5 ? 1u : 0u); if (branch_taken) { goto L_08AEBA08; } goto L_08AEB9FC; } L_08AEB9FC: aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); if (branch_taken) { goto L_08AEBA24; } goto L_08AEBA08; } L_08AEBA08: aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(521), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(518))); aot_gpr_4 = (static_cast(aot_gpr_4) < 21 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEBA24; } goto L_08AEBA20; } L_08AEBA20: aot_mem.aot_direct_store16(aot_gpr_16 + static_cast(518), static_cast(0u)); goto L_08AEBA24; L_08AEBA24: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEBA3C: aot_gpr_29 = (aot_gpr_29 + static_cast(-16)); { const std::uint32_t aot_run_words[3]{aot_gpr_16, aot_gpr_17, aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); aot_gpr_17 = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEBA64u); ctx.gpr[7] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBA64u) goto L_08AEBA64; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBA64: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEBA70u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBA70u) goto L_08AEBA70; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBA70: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(619)))))); aot_gpr_5 = (0u + static_cast(-17)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(4))); aot_gpr_5 = (aot_gpr_5 & 255u); aot_gpr_5 = (aot_gpr_5 & 1u); aot_gpr_5 = (aot_gpr_5 << 4u); aot_gpr_4 = (aot_gpr_4 | aot_gpr_5); aot_mem.aot_direct_store8(ctx.gpr[2] + static_cast(619), static_cast(aot_gpr_4)); ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; aot_gpr_31 = aot_run_words[2]; } jump_target = aot_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_08AEBAAC: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[4]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(32), aot_run_words); } aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_17 = (0u | 2u); aot_gpr_16 = (2236u << 16u); ctx.gpr[18] = (aot_gpr_16 + static_cast(29704)); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEBADCu); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBADCu) goto L_08AEBADC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBADC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEBAE8u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBAE8u) goto L_08AEBAE8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBAE8: aot_gpr_16 = (ctx.gpr[2] | 0u); aot_gpr_4 = (0u | 3u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_4); ctx.gpr[7] = (0u | 5u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), ctx.gpr[7]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(8), aot_gpr_17); ctx.gpr[6] = (0u | 4u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(12), ctx.gpr[6]); aot_gpr_4 = (0u | 8u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(16), aot_gpr_4); aot_gpr_4 = (0u | 9u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(20), aot_gpr_4); aot_gpr_4 = (0u | 10u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(24), aot_gpr_4); aot_gpr_4 = (0u | 11u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(28), aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(4))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEBB48; } goto L_08AEBB38; } L_08AEBB38: { const bool branch_taken = aot_gpr_4 == ctx.gpr[6]; if (branch_taken) { goto L_08AEBB48; } goto L_08AEBB40; } L_08AEBB40: { const bool branch_taken = aot_gpr_4 != ctx.gpr[7]; if (branch_taken) { goto L_08AEBB7C; } goto L_08AEBB48; } L_08AEBB48: aot_gpr_4 = (aot_gpr_16 + static_cast(944)); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_17 = (aot_gpr_29 + aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(0))); aot_gpr_31 = (0x08AEBB60u); ctx.gpr[6] = (0u | 3u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0194_entry, 194u, 377u, 0x08B0D904u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBB60u) goto L_08AEBB60; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBB60: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_17 + static_cast(16))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_16 + aot_gpr_4); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(1264))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBB7Cu); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 3u, 0x08B00014u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBB7Cu) goto L_08AEBB7C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBB7C: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[4]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(32), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; aot_gpr_31 = aot_run_words[3]; } jump_target = aot_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_08AEBB98: 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_31); aot_gpr_5 = (aot_gpr_4 + static_cast(16)); aot_gpr_16 = (2236u << 16u); ctx.gpr[7] = (aot_gpr_16 + static_cast(29704)); aot_gpr_31 = (0x08AEBBB8u); ctx.gpr[6] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBBB8u) goto L_08AEBBB8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBBB8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(29704))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEBBCC; } goto L_08AEBBC4; } L_08AEBBC4: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(4224), static_cast(0u)); if (branch_taken) { goto L_08AEBBD4; } goto L_08AEBBCC; } L_08AEBBCC: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store8(ctx.gpr[28] + static_cast(4224), static_cast(aot_gpr_4)); goto L_08AEBBD4; L_08AEBBD4: ctx.gpr[2] = (0u | 0u); aot_gpr_16 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_gpr_31 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); jump_target = aot_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_08AEBBE8: aot_gpr_29 = (aot_gpr_29 + static_cast(-48)); { const std::uint32_t aot_run_words[5]{aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } aot_gpr_16 = (aot_gpr_4 | 0u); aot_gpr_17 = (aot_gpr_16 + static_cast(16)); ctx.gpr[18] = (2236u << 16u); ctx.gpr[19] = (ctx.gpr[18] + static_cast(29704)); aot_gpr_5 = (aot_gpr_17 | 0u); ctx.gpr[6] = (0u | 2u); aot_gpr_31 = (0x08AEBC20u); ctx.gpr[7] = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBC20u) goto L_08AEBC20; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBC20: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-15972))); aot_gpr_31 = (0x08AEBC2Cu); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[18] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBC2Cu) goto L_08AEBC2C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBC2C: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(4))); aot_gpr_4 = (ctx.gpr[2] + static_cast(384)); aot_gpr_31 = (0x08AEBC3Cu); ctx.gpr[6] = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0118_entry, 118u, 165u, 0x089DCF78u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBC3Cu) goto L_08AEBC3C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBC3C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(0))); aot_mem.aot_direct_store32(ctx.gpr[18] + static_cast(29704), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(4))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(4), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(8))); aot_mem.aot_direct_store32(ctx.gpr[19] + static_cast(8), aot_gpr_4); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEBC64u); ctx.gpr[6] = (0u | 3u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08862890, 23u, 431u, 0x08862890u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_5, ctx.gpr[6], ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], ctx.gpr[11], aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[28], aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBC64u) goto L_08AEBC64; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBC64: ctx.gpr[2] = (0u | 0u); { std::uint32_t aot_run_words[5]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(16), aot_run_words); aot_gpr_16 = aot_run_words[0]; aot_gpr_17 = aot_run_words[1]; ctx.gpr[18] = aot_run_words[2]; ctx.gpr[19] = aot_run_words[3]; aot_gpr_31 = aot_run_words[4]; } jump_target = aot_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_08AEBC84: aot_gpr_29 = (aot_gpr_29 + static_cast(-112)); { const std::uint32_t aot_run_words[7]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), std::bit_cast(ctx.fpr[24]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(80), aot_run_words); } ctx.gpr[6] = (ctx.gpr[6] & 255u); aot_gpr_17 = (aot_gpr_4 | 0u); aot_gpr_16 = (aot_gpr_5 | 0u); ctx.fpr[24] = std::bit_cast(std::bit_cast(aot_fpr_12)); ctx.fpr[22] = std::bit_cast(std::bit_cast(aot_fpr_13)); { const bool branch_taken = ctx.gpr[6] != 0u; aot_fpr_20 = std::bit_cast(std::bit_cast(aot_fpr_14)); if (branch_taken) { goto L_08AEBCCC; } goto L_08AEBCC0; } L_08AEBCC0: aot_gpr_31 = (0x08AEBCC8u); 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, 160u, 0x08AD0AE4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBCC8u) goto L_08AEBCC8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBCC8: aot_fpr_20 = aot_fpr_20 + ctx.fpr[0]; goto L_08AEBCCC; L_08AEBCCC: aot_gpr_4 = (0u | 0u); aot_gpr_4 = (aot_gpr_4 & 1u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); ctx.gpr[6] = (0u + static_cast(-2049)); aot_gpr_5 = (aot_gpr_5 & ctx.gpr[6]); aot_gpr_4 = (aot_gpr_4 << 11u); aot_gpr_4 = (aot_gpr_5 | aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(72), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_08AEBD0C; } goto L_08AEBCFC; } L_08AEBCFC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); aot_gpr_5 = (0u | 2u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_08AEBD58; } goto L_08AEBD0C; } L_08AEBD0C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_5 = (aot_gpr_4 + static_cast(112)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_4 = (aot_gpr_16 + aot_gpr_4); { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_20)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); jump_target = ctx.gpr[6]; aot_gpr_31 = (0x08AEBD34u); aot_gpr_5 = (aot_gpr_29 | 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 == 0x08AEBD34u) goto L_08AEBD34; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBD34: { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_20)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(0), aot_run_words); } aot_gpr_4 = (aot_gpr_29 | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBD50u); ctx.gpr[6] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0025_entry, 25u, 424u, 0x0886A030u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBD50u) goto L_08AEBD50; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBD50: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBD58; } L_08AEBD58: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(92))); aot_gpr_5 = (aot_gpr_4 + static_cast(112)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_5 + static_cast(0)))))); aot_gpr_4 = (aot_gpr_16 + aot_gpr_4); { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_20)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } ctx.gpr[6] = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(4))); ctx.gpr[18] = (aot_gpr_29 + static_cast(16)); jump_target = ctx.gpr[6]; aot_gpr_31 = (0x08AEBD84u); aot_gpr_5 = (ctx.gpr[18] | 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 == 0x08AEBD84u) goto L_08AEBD84; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBD84: { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_20)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBDA0u); ctx.gpr[6] = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0025_entry, 25u, 424u, 0x0886A030u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBDA0u) goto L_08AEBDA0; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBDA0: aot_gpr_17 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(533)))))); aot_gpr_4 = (aot_gpr_17 < static_cast(23) ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBDB0; } L_08AEBDB0: aot_gpr_17 = (aot_gpr_17 << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + aot_gpr_17); ctx.gpr[1] = (aot_mem.aot_direct_load32(ctx.gpr[1] + static_cast(17120))); jump_target = ctx.gpr[1]; local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_08AEBDC8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBDD0; } L_08AEBDD0: aot_gpr_31 = (0x08AEBDD8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 374u, 0x08B41694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBDD8u) goto L_08AEBDD8; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBDD8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBDE0; } L_08AEBDE0: aot_gpr_17 = (aot_gpr_29 + static_cast(32)); aot_gpr_31 = (0x08AEBDECu); aot_gpr_4 = (aot_gpr_17 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0087_entry, 87u, 16u, 0x08960154u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBDECu) goto L_08AEBDEC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBDEC: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (aot_gpr_17 | 0u); aot_gpr_31 = (0x08AEBDFCu); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 391u, 0x08B4196Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBDFCu) goto L_08AEBDFC; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBDFC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE04; } L_08AEBE04: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE0C; } L_08AEBE0C: aot_gpr_4 = (aot_gpr_16 + static_cast(448)); { 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_5 = (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_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_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBE28u); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 391u, 0x08B4196Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBE28u) goto L_08AEBE28; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBE28: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE30; } L_08AEBE30: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE38; } L_08AEBE38: aot_gpr_4 = (aot_gpr_16 + static_cast(448)); { 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_5 = (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_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_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBE54u); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 391u, 0x08B4196Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBE54u) goto L_08AEBE54; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBE54: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE5C; } L_08AEBE5C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBE64; } L_08AEBE64: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(440))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_08AEBE98; } goto L_08AEBE70; } L_08AEBE70: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(440))); aot_gpr_4 = (aot_gpr_4 + 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_5 = (aot_gpr_29 + static_cast(48)); { 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_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBE90u); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 391u, 0x08B4196Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBE90u) goto L_08AEBE90; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBE90: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEB4; } goto L_08AEBE98; } L_08AEBE98: aot_gpr_4 = (aot_gpr_16 + static_cast(448)); { 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_5 = (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 = 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_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBEB4u); ctx.gpr[6] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0207_entry, 207u, 391u, 0x08B4196Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBEB4u) goto L_08AEBEB4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBEB4: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBEBC; } L_08AEBEBC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_08AEBEC4; } goto L_08AEBEC4; } L_08AEBEC4: { std::uint32_t aot_run_words[7]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), aot_run_words); aot_fpr_20 = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); ctx.fpr[24] = std::bit_cast(aot_run_words[2]); aot_gpr_16 = aot_run_words[3]; aot_gpr_17 = aot_run_words[4]; ctx.gpr[18] = aot_run_words[5]; aot_gpr_31 = aot_run_words[6]; } jump_target = aot_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_08AEBEE8: aot_gpr_29 = (aot_gpr_29 + static_cast(-112)); { const std::uint32_t aot_run_words[13]{std::bit_cast(aot_fpr_20), std::bit_cast(ctx.fpr[22]), std::bit_cast(ctx.fpr[24]), aot_gpr_16, aot_gpr_17, ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[22], ctx.gpr[23], ctx.gpr[30], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(48), aot_run_words); } ctx.gpr[23] = (aot_gpr_4 | 0u); ctx.gpr[19] = (0u | 0u); aot_gpr_17 = (0u | 0u); ctx.gpr[20] = (0u | 0u); ctx.gpr[30] = (ctx.gpr[23] + static_cast(16)); ctx.gpr[21] = (2236u << 16u); ctx.gpr[22] = (ctx.gpr[21] + static_cast(29704)); aot_gpr_5 = (ctx.gpr[30] | 0u); ctx.gpr[6] = (0u | 4u); aot_gpr_31 = (0x08AEBF4Cu); ctx.gpr[7] = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBF4Cu) goto L_08AEBF4C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBF4C: aot_gpr_31 = (0x08AEBF54u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[21] + static_cast(29704))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0186_entry, 186u, 168u, 0x08AECA18u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBF54u) goto L_08AEBF54; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBF54: aot_gpr_4 = (49864u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[18] = (0u + static_cast(-497)); if (branch_taken) { (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0186_entry, 186u, 8u, 0x08AEC098u>(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_08AEBF64; } L_08AEBF64: ctx.gpr[18] = (0u | 0u); aot_gpr_31 = (0x08AEBF70u); aot_gpr_4 = (0u | 1184u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0190_entry, 190u, 732u, 0x08AFF2C4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBF70u) goto L_08AEBF70; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBF70: aot_gpr_16 = (ctx.gpr[2] | 0u); if (aot_gpr_16 == 0u) { aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); goto L_08AEBF94; } goto L_08AEBF7C; L_08AEBF7C: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[21] + static_cast(29704))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x08AEBF8Cu); ctx.gpr[6] = (0u | 2u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 689u, 0x088A2F88u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBF8Cu) goto L_08AEBF8C; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBF8C: ctx.gpr[18] = (aot_gpr_16 | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); goto L_08AEBF94; L_08AEBF94: aot_gpr_16 = (ctx.gpr[18] | 0u); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(ctx.gpr[22] + static_cast(4), aot_run_words); ctx.fpr[24] = std::bit_cast(aot_run_words[0]); ctx.fpr[22] = std::bit_cast(aot_run_words[1]); aot_fpr_20 = std::bit_cast(aot_run_words[2]); } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_20) || std::isnan(aot_fpr_12)) && aot_fpr_20 == aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (50042u << 16u); if (branch_taken) { goto L_08AEBFC8; } goto L_08AEBFB4; } L_08AEBFB4: 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); ctx.gpr[18] = (0u + static_cast(-497)); if (branch_taken) { goto L_08AEBFDC; } goto L_08AEBFC8; } L_08AEBFC8: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_31 = (0x08AEBFD4u); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0035_entry, 35u, 514u, 0x088933E8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBFD4u) goto L_08AEBFD4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBFD4: aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.gpr[18] = (0u + static_cast(-497)); goto L_08AEBFDC; L_08AEBFDC: aot_gpr_31 = (0x08AEBFE4u); 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, 160u, 0x08AD0AE4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x08AEBFE4u) goto L_08AEBFE4; AOT_REGCACHE_SYNC_OUT(); return; L_08AEBFE4: aot_fpr_12 = aot_fpr_20 + ctx.fpr[0]; { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_12)}; aot_mem.aot_direct_store32_block(aot_gpr_16 + static_cast(48), aot_run_words); } { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_12)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(16), aot_run_words); } ctx.pc = 0x08AEC000u; AOT_REGCACHE_SYNC_OUT(); return; } #undef AOT_REGCACHE_SYNC_IN #undef AOT_REGCACHE_SYNC_OUT void recomp_unit_0185(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0185_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_185(Runtime &runtime) { runtime.register_generated_unit(185u, 0x08AE8000u, 16384u, &recomp_unit_0185, &recomp_unit_0185_entry); // PSPRECOMP_V812_COMPACT_REGISTRATION: same entry set, looped once in Runtime instead of source-expanded calls. runtime.register_generated_entry_mask(0x08AE8000u, &recomp_unit_0185, "recomp_unit_0185", kEntryMasks_recomp_unit_0185, 64u); } } // namespace psprecomp