#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_0040[64] = { 0x0000201060802881ull, 0x1004820409040500ull, 0x0408000000000000ull, 0x0440001428001008ull, 0x0008001000204081ull, 0x2212208000004000ull, 0xC8082000041148A1ull, 0x8400000800802000ull, 0xA80021250A200100ull, 0x0000000000505012ull, 0x1010244004020000ull, 0x0019010210010003ull, 0x2000000000009000ull, 0x2000003200C11000ull, 0x0120250040488000ull, 0x284441401014060Aull, 0x4444114280410842ull, 0x2454101051451049ull, 0x9148095304002A08ull, 0x0400A015440124A2ull, 0x0082208004100000ull, 0x00AA815080249568ull, 0x222200610A10A02Aull, 0x4851451008888A45ull, 0xAA91220000252880ull, 0x014A52200250494Aull, 0x544C012004800480ull, 0x202A840409050495ull, 0x0004821248960020ull, 0x8209002004110064ull, 0x4A211200824804A0ull, 0x5008280A85294806ull, 0x5501049100920501ull, 0x00A0000100014124ull, 0x480D080002955554ull, 0x000290840014A081ull, 0x9000248610001442ull, 0x02220100A8112492ull, 0x0080800042054000ull, 0x0002000081040800ull, 0x4840040000004004ull, 0xA212842010688000ull, 0x10942106884A1041ull, 0x028834425080A20Dull, 0x1210244840820142ull, 0x890A1083440858A2ull, 0x2291090A1041A204ull, 0x44250820D1091112ull, 0x2250820D10942083ull, 0x4004942041A20081ull, 0x2102548836880834ull, 0x0000000000605110ull, 0x00000142106884A1ull, 0xA50841A212220000ull, 0x080106884881A908ull, 0x4908001000149A12ull, 0x482A841148AA9154ull, 0x1145211552115551ull, 0xAA1084AAA2906884ull, 0x55211542A2292AA4ull, 0xAA4AA10A12945211ull, 0x1155211541512292ull, 0x1A284A94A92A1452ull, 0x9111080002008A42ull, }; static constexpr std::uint16_t kEntryBases_recomp_unit_0040[64] = { 1u, 10u, 20u, 22u, 30u, 36u, 43u, 56u, 61u, 73u, 79u, 86u, 95u, 98u, 106u, 115u, 129u, 143u, 160u, 176u, 190u, 196u, 214u, 229u, 247u, 262u, 279u, 291u, 307u, 319u, 330u, 344u, 361u, 376u, 384u, 402u, 413u, 425u, 439u, 446u, 451u, 457u, 470u, 486u, 503u, 516u, 534u, 550u, 567u, 584u, 597u, 615u, 621u, 633u, 647u, 662u, 675u, 696u, 718u, 739u, 762u, 784u, 805u, 828u, }; void recomp_unit_0040_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,31,5,29,16,6 fprs=12,13,14,20 gpr_occ=3511 fpr_occ=1585 gpr_total=4486 fpr_total=1951 std::uint32_t aot_gpr_4 = ctx.gpr[4]; std::uint32_t aot_gpr_31 = ctx.gpr[31]; std::uint32_t aot_gpr_5 = ctx.gpr[5]; std::uint32_t aot_gpr_29 = ctx.gpr[29]; std::uint32_t aot_gpr_16 = ctx.gpr[16]; std::uint32_t aot_gpr_6 = ctx.gpr[6]; float aot_fpr_12 = ctx.fpr[12]; float aot_fpr_13 = ctx.fpr[13]; float aot_fpr_14 = ctx.fpr[14]; float aot_fpr_20 = ctx.fpr[20]; bool aot_regcache_valid = true; #define AOT_REGCACHE_SYNC_OUT() do { if (aot_regcache_valid) { ctx.gpr[4] = aot_gpr_4; ctx.gpr[31] = aot_gpr_31; ctx.gpr[5] = aot_gpr_5; ctx.gpr[29] = aot_gpr_29; ctx.gpr[16] = aot_gpr_16; ctx.gpr[6] = aot_gpr_6; ctx.fpr[12] = aot_fpr_12; ctx.fpr[13] = aot_fpr_13; ctx.fpr[14] = aot_fpr_14; ctx.fpr[20] = aot_fpr_20; } } while (false) #define AOT_REGCACHE_SYNC_IN() do { if (aot_regcache_valid) { aot_gpr_4 = ctx.gpr[4]; aot_gpr_31 = ctx.gpr[31]; aot_gpr_5 = ctx.gpr[5]; aot_gpr_29 = ctx.gpr[29]; aot_gpr_16 = ctx.gpr[16]; aot_gpr_6 = ctx.gpr[6]; aot_fpr_12 = ctx.fpr[12]; aot_fpr_13 = ctx.fpr[13]; aot_fpr_14 = ctx.fpr[14]; aot_fpr_20 = ctx.fpr[20]; } } while (false) // PSPRECOMP_AOT_REGCACHE_END std::uint32_t jump_target = 0u; std::uint32_t local_transfers = 0u; std::uint32_t local_redispatch_rounds = 0u; std::uint32_t local_pc = ctx.pc; std::uint32_t entry_id = direct_entry_id; LOCAL_DISPATCH: { if (entry_id == 0u) { const std::uint32_t entry_delta = local_pc - 0x088A4000u; entry_id = 0u; if (entry_delta < 16384u && (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_0040[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_0040[entry_group] + std::popcount(entry_mask & (entry_bit - 1ull))); } } } switch (entry_id) { case 1u: goto L_088A4000; case 2u: goto L_088A401C; case 3u: goto L_088A402C; case 4u: goto L_088A4034; case 5u: goto L_088A405C; case 6u: goto L_088A4074; case 7u: goto L_088A4078; case 8u: goto L_088A4090; case 9u: goto L_088A40B4; case 10u: goto L_088A4120; case 11u: goto L_088A4128; case 12u: goto L_088A4148; case 13u: goto L_088A4160; case 14u: goto L_088A416C; case 15u: goto L_088A4188; case 16u: goto L_088A41A4; case 17u: goto L_088A41BC; case 18u: goto L_088A41C8; case 19u: goto L_088A41F0; case 20u: goto L_088A42CC; case 21u: goto L_088A42E8; case 22u: goto L_088A430C; case 23u: goto L_088A4330; case 24u: goto L_088A436C; case 25u: goto L_088A4374; case 26u: goto L_088A4388; case 27u: goto L_088A4390; case 28u: goto L_088A43D8; case 29u: goto L_088A43E8; case 30u: goto L_088A4400; case 31u: goto L_088A441C; case 32u: goto L_088A4438; case 33u: goto L_088A4454; case 34u: goto L_088A4490; case 35u: goto L_088A44CC; case 36u: goto L_088A4538; case 37u: goto L_088A459C; case 38u: goto L_088A45B4; case 39u: goto L_088A45C4; case 40u: goto L_088A45D0; case 41u: goto L_088A45E4; case 42u: goto L_088A45F4; case 43u: goto L_088A4600; case 44u: goto L_088A4614; case 45u: goto L_088A461C; case 46u: goto L_088A462C; case 47u: goto L_088A4638; case 48u: goto L_088A4640; case 49u: goto L_088A4650; case 50u: goto L_088A4668; case 51u: goto L_088A46B4; case 52u: goto L_088A46CC; case 53u: goto L_088A46EC; case 54u: goto L_088A46F8; case 55u: goto L_088A46FC; case 56u: goto L_088A4734; case 57u: goto L_088A475C; case 58u: goto L_088A478C; case 59u: goto L_088A47E8; case 60u: goto L_088A47FC; case 61u: goto L_088A4820; case 62u: goto L_088A4854; case 63u: goto L_088A4864; case 64u: goto L_088A486C; case 65u: goto L_088A4880; case 66u: goto L_088A4888; case 67u: goto L_088A4894; case 68u: goto L_088A48A0; case 69u: goto L_088A48B4; case 70u: goto L_088A48EC; case 71u: goto L_088A48F4; case 72u: goto L_088A48FC; case 73u: goto L_088A4904; case 74u: goto L_088A4910; case 75u: goto L_088A4930; case 76u: goto L_088A4938; case 77u: goto L_088A4950; case 78u: goto L_088A4958; case 79u: goto L_088A4A44; case 80u: goto L_088A4A68; case 81u: goto L_088A4A98; case 82u: goto L_088A4AA8; case 83u: goto L_088A4AB4; case 84u: goto L_088A4AD0; case 85u: goto L_088A4AF0; case 86u: goto L_088A4B00; case 87u: goto L_088A4B04; case 88u: goto L_088A4B40; case 89u: goto L_088A4B70; case 90u: goto L_088A4B84; case 91u: goto L_088A4BA0; case 92u: goto L_088A4BC0; case 93u: goto L_088A4BCC; case 94u: goto L_088A4BD0; case 95u: goto L_088A4C30; case 96u: goto L_088A4C3C; case 97u: goto L_088A4CF4; case 98u: goto L_088A4D30; case 99u: goto L_088A4D40; case 100u: goto L_088A4D58; case 101u: goto L_088A4D5C; case 102u: goto L_088A4D84; case 103u: goto L_088A4D90; case 104u: goto L_088A4D94; case 105u: goto L_088A4DF4; case 106u: goto L_088A4E3C; case 107u: goto L_088A4E4C; case 108u: goto L_088A4E58; case 109u: goto L_088A4E78; case 110u: goto L_088A4EA0; case 111u: goto L_088A4EA8; case 112u: goto L_088A4EB4; case 113u: goto L_088A4ED4; case 114u: goto L_088A4EE0; case 115u: goto L_088A4F04; case 116u: goto L_088A4F0C; case 117u: goto L_088A4F24; case 118u: goto L_088A4F28; case 119u: goto L_088A4F48; case 120u: goto L_088A4F50; case 121u: goto L_088A4F70; case 122u: goto L_088A4F98; case 123u: goto L_088A4FA0; case 124u: goto L_088A4FB8; case 125u: goto L_088A4FC8; case 126u: goto L_088A4FD8; case 127u: goto L_088A4FEC; case 128u: goto L_088A4FF4; case 129u: goto L_088A5004; case 130u: goto L_088A5018; case 131u: goto L_088A502C; case 132u: goto L_088A5040; case 133u: goto L_088A5058; case 134u: goto L_088A507C; case 135u: goto L_088A5084; case 136u: goto L_088A5098; case 137u: goto L_088A50A0; case 138u: goto L_088A50B0; case 139u: goto L_088A50C8; case 140u: goto L_088A50D8; case 141u: goto L_088A50E8; case 142u: goto L_088A50F8; case 143u: goto L_088A5100; case 144u: goto L_088A510C; case 145u: goto L_088A5118; case 146u: goto L_088A5130; case 147u: goto L_088A5140; case 148u: goto L_088A5148; case 149u: goto L_088A5158; case 150u: goto L_088A5160; case 151u: goto L_088A5170; case 152u: goto L_088A5178; case 153u: goto L_088A5190; case 154u: goto L_088A51B0; case 155u: goto L_088A51C8; case 156u: goto L_088A51D0; case 157u: goto L_088A51D8; case 158u: goto L_088A51E8; case 159u: goto L_088A51F4; case 160u: goto L_088A520C; case 161u: goto L_088A5224; case 162u: goto L_088A522C; case 163u: goto L_088A5234; case 164u: goto L_088A5268; case 165u: goto L_088A5280; case 166u: goto L_088A5284; case 167u: goto L_088A5290; case 168u: goto L_088A5298; case 169u: goto L_088A52A0; case 170u: goto L_088A52AC; case 171u: goto L_088A52CC; case 172u: goto L_088A52D8; case 173u: goto L_088A52E0; case 174u: goto L_088A52F0; case 175u: goto L_088A52FC; case 176u: goto L_088A5304; case 177u: goto L_088A5314; case 178u: goto L_088A531C; case 179u: goto L_088A5328; case 180u: goto L_088A5334; case 181u: goto L_088A5340; case 182u: goto L_088A5368; case 183u: goto L_088A5378; case 184u: goto L_088A5380; case 185u: goto L_088A5388; case 186u: goto L_088A5390; case 187u: goto L_088A53B4; case 188u: goto L_088A53BC; case 189u: goto L_088A53E8; case 190u: goto L_088A5450; case 191u: goto L_088A5468; case 192u: goto L_088A549C; case 193u: goto L_088A54B4; case 194u: goto L_088A54C4; case 195u: goto L_088A54DC; case 196u: goto L_088A550C; case 197u: goto L_088A5514; case 198u: goto L_088A5518; case 199u: goto L_088A5520; case 200u: goto L_088A5528; case 201u: goto L_088A5530; case 202u: goto L_088A553C; case 203u: goto L_088A5548; case 204u: goto L_088A5554; case 205u: goto L_088A557C; case 206u: goto L_088A5590; case 207u: goto L_088A5598; case 208u: goto L_088A55A0; case 209u: goto L_088A55BC; case 210u: goto L_088A55C4; case 211u: goto L_088A55CC; case 212u: goto L_088A55D4; case 213u: goto L_088A55DC; case 214u: goto L_088A5604; case 215u: goto L_088A560C; case 216u: goto L_088A5614; case 217u: goto L_088A5634; case 218u: goto L_088A563C; case 219u: goto L_088A5650; case 220u: goto L_088A5664; case 221u: goto L_088A566C; case 222u: goto L_088A5680; case 223u: goto L_088A5694; case 224u: goto L_088A5698; case 225u: goto L_088A56C4; case 226u: goto L_088A56D4; case 227u: goto L_088A56E4; case 228u: goto L_088A56F4; case 229u: goto L_088A5700; case 230u: goto L_088A5708; case 231u: goto L_088A5718; case 232u: goto L_088A5724; case 233u: goto L_088A572C; case 234u: goto L_088A573C; case 235u: goto L_088A574C; case 236u: goto L_088A575C; case 237u: goto L_088A576C; case 238u: goto L_088A5790; case 239u: goto L_088A57A0; case 240u: goto L_088A57A8; case 241u: goto L_088A57B8; case 242u: goto L_088A57C0; case 243u: goto L_088A57D0; case 244u: goto L_088A57D8; case 245u: goto L_088A57EC; case 246u: goto L_088A57F8; case 247u: goto L_088A581C; case 248u: goto L_088A582C; case 249u: goto L_088A5834; case 250u: goto L_088A5840; case 251u: goto L_088A5848; case 252u: goto L_088A5854; case 253u: goto L_088A58A4; case 254u: goto L_088A58B4; case 255u: goto L_088A58C0; case 256u: goto L_088A58D0; case 257u: goto L_088A58DC; case 258u: goto L_088A58E4; case 259u: goto L_088A58EC; case 260u: goto L_088A58F4; case 261u: goto L_088A58FC; case 262u: goto L_088A5904; case 263u: goto L_088A590C; case 264u: goto L_088A5918; case 265u: goto L_088A5920; case 266u: goto L_088A592C; case 267u: goto L_088A5938; case 268u: goto L_088A5950; case 269u: goto L_088A5958; case 270u: goto L_088A5964; case 271u: goto L_088A5994; case 272u: goto L_088A59A4; case 273u: goto L_088A59B0; case 274u: goto L_088A59B8; case 275u: goto L_088A59C4; case 276u: goto L_088A59CC; case 277u: goto L_088A59D8; case 278u: goto L_088A59E0; case 279u: goto L_088A5A1C; case 280u: goto L_088A5A28; case 281u: goto L_088A5A5C; case 282u: goto L_088A5A68; case 283u: goto L_088A5A94; case 284u: goto L_088A5AA0; case 285u: goto L_088A5AC8; case 286u: goto L_088A5ACC; case 287u: goto L_088A5AD8; case 288u: goto L_088A5AE8; case 289u: goto L_088A5AF0; case 290u: goto L_088A5AF8; case 291u: goto L_088A5B00; case 292u: goto L_088A5B08; case 293u: goto L_088A5B10; case 294u: goto L_088A5B1C; case 295u: goto L_088A5B28; case 296u: goto L_088A5B40; case 297u: goto L_088A5B48; case 298u: goto L_088A5B60; case 299u: goto L_088A5B6C; case 300u: goto L_088A5B88; case 301u: goto L_088A5BA8; case 302u: goto L_088A5BBC; case 303u: goto L_088A5BC4; case 304u: goto L_088A5BCC; case 305u: goto L_088A5BD4; case 306u: goto L_088A5BF4; case 307u: goto L_088A5C14; case 308u: goto L_088A5C44; case 309u: goto L_088A5C48; case 310u: goto L_088A5C50; case 311u: goto L_088A5C5C; case 312u: goto L_088A5C6C; case 313u: goto L_088A5C78; case 314u: goto L_088A5C84; case 315u: goto L_088A5C90; case 316u: goto L_088A5CA4; case 317u: goto L_088A5CBC; case 318u: goto L_088A5CC8; case 319u: goto L_088A5D08; case 320u: goto L_088A5D14; case 321u: goto L_088A5D18; case 322u: goto L_088A5D40; case 323u: goto L_088A5D50; case 324u: goto L_088A5D68; case 325u: goto L_088A5D94; case 326u: goto L_088A5DC0; case 327u: goto L_088A5DCC; case 328u: goto L_088A5DE4; case 329u: goto L_088A5DFC; case 330u: goto L_088A5E14; case 331u: goto L_088A5E1C; case 332u: goto L_088A5E28; case 333u: goto L_088A5E4C; case 334u: goto L_088A5E58; case 335u: goto L_088A5E64; case 336u: goto L_088A5E7C; case 337u: goto L_088A5EA4; case 338u: goto L_088A5EB0; case 339u: goto L_088A5EC0; case 340u: goto L_088A5ED4; case 341u: goto L_088A5EE4; case 342u: goto L_088A5EEC; case 343u: goto L_088A5EF8; case 344u: goto L_088A5F04; case 345u: goto L_088A5F08; case 346u: goto L_088A5F2C; case 347u: goto L_088A5F38; case 348u: goto L_088A5F40; case 349u: goto L_088A5F4C; case 350u: goto L_088A5F54; case 351u: goto L_088A5F60; case 352u: goto L_088A5F68; case 353u: goto L_088A5F7C; case 354u: goto L_088A5F84; case 355u: goto L_088A5F8C; case 356u: goto L_088A5FAC; case 357u: goto L_088A5FB4; case 358u: goto L_088A5FCC; case 359u: goto L_088A5FF0; case 360u: goto L_088A5FF8; case 361u: goto L_088A6000; case 362u: goto L_088A6020; case 363u: goto L_088A6028; case 364u: goto L_088A6044; case 365u: goto L_088A6050; case 366u: goto L_088A605C; case 367u: goto L_088A6080; case 368u: goto L_088A6090; case 369u: goto L_088A609C; case 370u: goto L_088A60A8; case 371u: goto L_088A60C0; case 372u: goto L_088A60E0; case 373u: goto L_088A60E8; case 374u: goto L_088A60F0; case 375u: goto L_088A60F8; case 376u: goto L_088A6108; case 377u: goto L_088A6114; case 378u: goto L_088A6120; case 379u: goto L_088A6138; case 380u: goto L_088A6140; case 381u: goto L_088A6180; case 382u: goto L_088A61D4; case 383u: goto L_088A61DC; case 384u: goto L_088A6208; case 385u: goto L_088A6210; case 386u: goto L_088A6218; case 387u: goto L_088A6220; case 388u: goto L_088A6228; case 389u: goto L_088A6230; case 390u: goto L_088A6238; case 391u: goto L_088A6240; case 392u: goto L_088A6248; case 393u: goto L_088A6250; case 394u: goto L_088A625C; case 395u: goto L_088A6264; case 396u: goto L_088A62AC; case 397u: goto L_088A62C0; case 398u: goto L_088A62C8; case 399u: goto L_088A62CC; case 400u: goto L_088A62EC; case 401u: goto L_088A62F8; case 402u: goto L_088A6300; case 403u: goto L_088A631C; case 404u: goto L_088A6334; case 405u: goto L_088A633C; case 406u: goto L_088A6348; case 407u: goto L_088A6350; case 408u: goto L_088A6388; case 409u: goto L_088A639C; case 410u: goto L_088A63B0; case 411u: goto L_088A63BC; case 412u: goto L_088A63C4; case 413u: goto L_088A6404; case 414u: goto L_088A6418; case 415u: goto L_088A6428; case 416u: goto L_088A6430; case 417u: goto L_088A6470; case 418u: goto L_088A6484; case 419u: goto L_088A6488; case 420u: goto L_088A649C; case 421u: goto L_088A64A8; case 422u: goto L_088A64B4; case 423u: goto L_088A64F0; case 424u: goto L_088A64FC; case 425u: goto L_088A6504; case 426u: goto L_088A6510; case 427u: goto L_088A651C; case 428u: goto L_088A6528; case 429u: goto L_088A6534; case 430u: goto L_088A6540; case 431u: goto L_088A6550; case 432u: goto L_088A656C; case 433u: goto L_088A6574; case 434u: goto L_088A657C; case 435u: goto L_088A65A0; case 436u: goto L_088A65C4; case 437u: goto L_088A65D4; case 438u: goto L_088A65E4; case 439u: goto L_088A6638; case 440u: goto L_088A6640; case 441u: goto L_088A6648; case 442u: goto L_088A6664; case 443u: goto L_088A6678; case 444u: goto L_088A66BC; case 445u: goto L_088A66DC; case 446u: goto L_088A672C; case 447u: goto L_088A6748; case 448u: goto L_088A6760; case 449u: goto L_088A677C; case 450u: goto L_088A67C4; case 451u: goto L_088A6808; case 452u: goto L_088A6838; case 453u: goto L_088A68A8; case 454u: goto L_088A68D8; case 455u: goto L_088A68EC; case 456u: goto L_088A68F8; case 457u: goto L_088A693C; case 458u: goto L_088A694C; case 459u: goto L_088A6954; case 460u: goto L_088A6958; case 461u: goto L_088A6970; case 462u: goto L_088A6994; case 463u: goto L_088A69A8; case 464u: goto L_088A69BC; case 465u: goto L_088A69C4; case 466u: goto L_088A69D0; case 467u: goto L_088A69E4; case 468u: goto L_088A69F4; case 469u: goto L_088A69FC; case 470u: goto L_088A6A00; case 471u: goto L_088A6A18; case 472u: goto L_088A6A30; case 473u: goto L_088A6A44; case 474u: goto L_088A6A4C; case 475u: goto L_088A6A58; case 476u: goto L_088A6A6C; case 477u: goto L_088A6A7C; case 478u: goto L_088A6A84; case 479u: goto L_088A6A88; case 480u: goto L_088A6AA0; case 481u: goto L_088A6AB4; case 482u: goto L_088A6AC8; case 483u: goto L_088A6AD0; case 484u: goto L_088A6ADC; case 485u: goto L_088A6AF0; case 486u: goto L_088A6B00; case 487u: goto L_088A6B08; case 488u: goto L_088A6B0C; case 489u: goto L_088A6B24; case 490u: goto L_088A6B34; case 491u: goto L_088A6B3C; case 492u: goto L_088A6B5C; case 493u: goto L_088A6B70; case 494u: goto L_088A6B78; case 495u: goto L_088A6B84; case 496u: goto L_088A6B98; case 497u: goto L_088A6BA8; case 498u: goto L_088A6BB0; case 499u: goto L_088A6BB4; case 500u: goto L_088A6BCC; case 501u: goto L_088A6BDC; case 502u: goto L_088A6BE4; case 503u: goto L_088A6C04; case 504u: goto L_088A6C18; case 505u: goto L_088A6C20; case 506u: goto L_088A6C44; case 507u: goto L_088A6C5C; case 508u: goto L_088A6C78; case 509u: goto L_088A6C8C; case 510u: goto L_088A6C98; case 511u: goto L_088A6CA8; case 512u: goto L_088A6CB4; case 513u: goto L_088A6CD0; case 514u: goto L_088A6CE4; case 515u: goto L_088A6CF0; case 516u: goto L_088A6D04; case 517u: goto L_088A6D14; case 518u: goto L_088A6D1C; case 519u: goto L_088A6D2C; case 520u: goto L_088A6D30; case 521u: goto L_088A6D38; case 522u: goto L_088A6D4C; case 523u: goto L_088A6D68; case 524u: goto L_088A6D78; case 525u: goto L_088A6D80; case 526u: goto L_088A6D84; case 527u: goto L_088A6D9C; case 528u: goto L_088A6DB0; case 529u: goto L_088A6DC4; case 530u: goto L_088A6DCC; case 531u: goto L_088A6DE0; case 532u: goto L_088A6DEC; case 533u: goto L_088A6DFC; case 534u: goto L_088A6E08; case 535u: goto L_088A6E24; case 536u: goto L_088A6E34; case 537u: goto L_088A6E3C; case 538u: goto L_088A6E40; case 539u: goto L_088A6E58; case 540u: goto L_088A6E70; case 541u: goto L_088A6E84; case 542u: goto L_088A6E8C; case 543u: goto L_088A6EA0; case 544u: goto L_088A6EAC; case 545u: goto L_088A6EC0; case 546u: goto L_088A6ED0; case 547u: goto L_088A6EDC; case 548u: goto L_088A6EE4; case 549u: goto L_088A6EF4; case 550u: goto L_088A6F04; case 551u: goto L_088A6F10; case 552u: goto L_088A6F20; case 553u: goto L_088A6F30; case 554u: goto L_088A6F40; case 555u: goto L_088A6F4C; case 556u: goto L_088A6F60; case 557u: goto L_088A6F70; case 558u: goto L_088A6F78; case 559u: goto L_088A6F7C; case 560u: goto L_088A6F94; case 561u: goto L_088A6FAC; case 562u: goto L_088A6FC0; case 563u: goto L_088A6FC8; case 564u: goto L_088A6FD4; case 565u: goto L_088A6FE8; case 566u: goto L_088A6FF8; case 567u: goto L_088A7000; case 568u: goto L_088A7004; case 569u: goto L_088A701C; case 570u: goto L_088A7034; case 571u: goto L_088A7048; case 572u: goto L_088A7050; case 573u: goto L_088A705C; case 574u: goto L_088A7070; case 575u: goto L_088A7080; case 576u: goto L_088A7088; case 577u: goto L_088A708C; case 578u: goto L_088A70A4; case 579u: goto L_088A70BC; case 580u: goto L_088A70D0; case 581u: goto L_088A70D8; case 582u: goto L_088A70E4; case 583u: goto L_088A70F4; case 584u: goto L_088A7100; case 585u: goto L_088A711C; case 586u: goto L_088A7144; case 587u: goto L_088A7154; case 588u: goto L_088A715C; case 589u: goto L_088A7160; case 590u: goto L_088A7178; case 591u: goto L_088A7194; case 592u: goto L_088A71A8; case 593u: goto L_088A71B0; case 594u: goto L_088A71BC; case 595u: goto L_088A71C8; case 596u: goto L_088A71F8; case 597u: goto L_088A7208; case 598u: goto L_088A7210; case 599u: goto L_088A7214; case 600u: goto L_088A722C; case 601u: goto L_088A724C; case 602u: goto L_088A725C; case 603u: goto L_088A7264; case 604u: goto L_088A7268; case 605u: goto L_088A7270; case 606u: goto L_088A7274; case 607u: goto L_088A728C; case 608u: goto L_088A729C; case 609u: goto L_088A72A8; case 610u: goto L_088A72B0; case 611u: goto L_088A72B8; case 612u: goto L_088A72C4; case 613u: goto L_088A72E0; case 614u: goto L_088A72F4; case 615u: goto L_088A7310; case 616u: goto L_088A7320; case 617u: goto L_088A7330; case 618u: goto L_088A7338; case 619u: goto L_088A7354; case 620u: goto L_088A7358; case 621u: goto L_088A7400; case 622u: goto L_088A7414; case 623u: goto L_088A741C; case 624u: goto L_088A7428; case 625u: goto L_088A743C; case 626u: goto L_088A744C; case 627u: goto L_088A7454; case 628u: goto L_088A7458; case 629u: goto L_088A7470; case 630u: goto L_088A7484; case 631u: goto L_088A7498; case 632u: goto L_088A74A0; case 633u: goto L_088A7544; case 634u: goto L_088A7554; case 635u: goto L_088A7564; case 636u: goto L_088A7570; case 637u: goto L_088A7584; case 638u: goto L_088A7594; case 639u: goto L_088A759C; case 640u: goto L_088A75A0; case 641u: goto L_088A75B8; case 642u: goto L_088A75CC; case 643u: goto L_088A75E0; case 644u: goto L_088A75E8; case 645u: goto L_088A75F4; case 646u: goto L_088A75FC; case 647u: goto L_088A760C; case 648u: goto L_088A7620; case 649u: goto L_088A762C; case 650u: goto L_088A7634; case 651u: goto L_088A763C; case 652u: goto L_088A7640; case 653u: goto L_088A765C; case 654u: goto L_088A766C; case 655u: goto L_088A7678; case 656u: goto L_088A768C; case 657u: goto L_088A769C; case 658u: goto L_088A76A4; case 659u: goto L_088A76A8; case 660u: goto L_088A76C0; case 661u: goto L_088A76EC; case 662u: goto L_088A7704; case 663u: goto L_088A7710; case 664u: goto L_088A7724; case 665u: goto L_088A772C; case 666u: goto L_088A7730; case 667u: goto L_088A773C; case 668u: goto L_088A7748; case 669u: goto L_088A7750; case 670u: goto L_088A7790; case 671u: goto L_088A77CC; case 672u: goto L_088A77E0; case 673u: goto L_088A77EC; case 674u: goto L_088A77F8; case 675u: goto L_088A7808; case 676u: goto L_088A7810; case 677u: goto L_088A7818; case 678u: goto L_088A7820; case 679u: goto L_088A7830; case 680u: goto L_088A783C; case 681u: goto L_088A7844; case 682u: goto L_088A784C; case 683u: goto L_088A7854; case 684u: goto L_088A785C; case 685u: goto L_088A786C; case 686u: goto L_088A7878; case 687u: goto L_088A7880; case 688u: goto L_088A7890; case 689u: goto L_088A78A8; case 690u: goto L_088A78BC; case 691u: goto L_088A78C4; case 692u: goto L_088A78CC; case 693u: goto L_088A78D4; case 694u: goto L_088A78EC; case 695u: goto L_088A78F8; case 696u: goto L_088A7900; case 697u: goto L_088A7910; case 698u: goto L_088A7918; case 699u: goto L_088A7920; case 700u: goto L_088A7928; case 701u: goto L_088A7930; case 702u: goto L_088A7938; case 703u: goto L_088A7940; case 704u: goto L_088A7950; case 705u: goto L_088A7964; case 706u: goto L_088A7970; case 707u: goto L_088A7978; case 708u: goto L_088A7980; case 709u: goto L_088A7988; case 710u: goto L_088A7990; case 711u: goto L_088A79A0; case 712u: goto L_088A79B4; case 713u: goto L_088A79C0; case 714u: goto L_088A79C8; case 715u: goto L_088A79D8; case 716u: goto L_088A79E0; case 717u: goto L_088A79F0; case 718u: goto L_088A7A08; case 719u: goto L_088A7A1C; case 720u: goto L_088A7A2C; case 721u: goto L_088A7A34; case 722u: goto L_088A7A38; case 723u: goto L_088A7A50; case 724u: goto L_088A7A5C; case 725u: goto L_088A7A64; case 726u: goto L_088A7A74; case 727u: goto L_088A7A7C; case 728u: goto L_088A7A84; case 729u: goto L_088A7A8C; case 730u: goto L_088A7A94; case 731u: goto L_088A7A9C; case 732u: goto L_088A7AA8; case 733u: goto L_088A7ABC; case 734u: goto L_088A7AD0; case 735u: goto L_088A7AE4; case 736u: goto L_088A7AEC; case 737u: goto L_088A7AF4; case 738u: goto L_088A7AFC; case 739u: goto L_088A7B08; case 740u: goto L_088A7B14; case 741u: goto L_088A7B1C; case 742u: goto L_088A7B24; case 743u: goto L_088A7B2C; case 744u: goto L_088A7B34; case 745u: goto L_088A7B40; case 746u: goto L_088A7B4C; case 747u: goto L_088A7B54; case 748u: goto L_088A7B64; case 749u: goto L_088A7B74; case 750u: goto L_088A7B7C; case 751u: goto L_088A7B84; case 752u: goto L_088A7B98; case 753u: goto L_088A7BA0; case 754u: goto L_088A7BA8; case 755u: goto L_088A7BB0; case 756u: goto L_088A7BC0; case 757u: goto L_088A7BD4; case 758u: goto L_088A7BE0; case 759u: goto L_088A7BE8; case 760u: goto L_088A7BF0; case 761u: goto L_088A7BF8; case 762u: goto L_088A7C00; case 763u: goto L_088A7C10; case 764u: goto L_088A7C24; case 765u: goto L_088A7C30; case 766u: goto L_088A7C38; case 767u: goto L_088A7C48; case 768u: goto L_088A7C50; case 769u: goto L_088A7C5C; case 770u: goto L_088A7C64; case 771u: goto L_088A7C70; case 772u: goto L_088A7C84; case 773u: goto L_088A7C8C; case 774u: goto L_088A7CA0; case 775u: goto L_088A7CB4; case 776u: goto L_088A7CBC; case 777u: goto L_088A7CC4; case 778u: goto L_088A7CCC; case 779u: goto L_088A7CD8; case 780u: goto L_088A7CE4; case 781u: goto L_088A7CEC; case 782u: goto L_088A7CF4; case 783u: goto L_088A7CFC; case 784u: goto L_088A7D04; case 785u: goto L_088A7D10; case 786u: goto L_088A7D1C; case 787u: goto L_088A7D24; case 788u: goto L_088A7D34; case 789u: goto L_088A7D40; case 790u: goto L_088A7D50; case 791u: goto L_088A7D58; case 792u: goto L_088A7D60; case 793u: goto L_088A7D78; case 794u: goto L_088A7D80; case 795u: goto L_088A7D88; case 796u: goto L_088A7D90; case 797u: goto L_088A7DA0; case 798u: goto L_088A7DB4; case 799u: goto L_088A7DC0; case 800u: goto L_088A7DC8; case 801u: goto L_088A7DD0; case 802u: goto L_088A7DD8; case 803u: goto L_088A7DE0; case 804u: goto L_088A7DF0; case 805u: goto L_088A7E04; case 806u: goto L_088A7E10; case 807u: goto L_088A7E18; case 808u: goto L_088A7E28; case 809u: goto L_088A7E30; case 810u: goto L_088A7E44; case 811u: goto L_088A7E4C; case 812u: goto L_088A7E54; case 813u: goto L_088A7E60; case 814u: goto L_088A7E6C; case 815u: goto L_088A7E74; case 816u: goto L_088A7E7C; case 817u: goto L_088A7E88; case 818u: goto L_088A7E90; case 819u: goto L_088A7E9C; case 820u: goto L_088A7EA4; case 821u: goto L_088A7EAC; case 822u: goto L_088A7EB8; case 823u: goto L_088A7ECC; case 824u: goto L_088A7ED4; case 825u: goto L_088A7EE4; case 826u: goto L_088A7EEC; case 827u: goto L_088A7EF0; case 828u: goto L_088A7F04; case 829u: goto L_088A7F18; case 830u: goto L_088A7F24; case 831u: goto L_088A7F2C; case 832u: goto L_088A7F3C; case 833u: goto L_088A7F64; case 834u: goto L_088A7FAC; case 835u: goto L_088A7FC0; case 836u: goto L_088A7FD0; case 837u: goto L_088A7FE0; case 838u: goto L_088A7FF0; case 839u: goto L_088A7FFC; 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_088A4000: aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (aot_gpr_16 + static_cast(16)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_14 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_12 = aot_fpr_12 - ctx.fpr[0]; if (branch_taken) { goto L_088A402C; } goto L_088A401C; } L_088A401C: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); { const bool branch_taken = 0u == 0u; aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_13) ^ 0x80000000u); if (branch_taken) { goto L_088A4034; } goto L_088A402C; } L_088A402C: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); goto L_088A4034; L_088A4034: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25136))); { const float fs = aot_fpr_14; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } { const float fs = aot_fpr_14; 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; } { 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_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } { const float fs = aot_fpr_20; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4074; } goto L_088A405C; } L_088A405C: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25136))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < aot_fpr_12)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25136))); goto L_088A4074; } goto L_088A4074; L_088A4074: aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); goto L_088A4078; L_088A4078: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A41F0; } goto L_088A4090; } L_088A4090: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); aot_fpr_14 = std::bit_cast(0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1104))); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[15] < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A4128; } goto L_088A40B4; } L_088A40B4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25128))); { 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; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1104))); { const float fs = aot_fpr_13; const float ft = ctx.fpr[15]; 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_12 = aot_fpr_12 + aot_fpr_13; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25116))); { const float fs = ctx.fpr[15]; 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_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); 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(32)); { 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(304)); { 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(304), 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 = (aot_gpr_16 + static_cast(16)); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_4 + static_cast(0), aot_run_words); ctx.fpr[15] = std::bit_cast(aot_run_words[0]); ctx.fpr[16] = std::bit_cast(aot_run_words[1]); ctx.fpr[17] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x088A4120u); 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, 611u, 0x08A66E08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4120u) goto L_088A4120; AOT_REGCACHE_SYNC_OUT(); return; L_088A4120: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A4148; } goto L_088A4128; } L_088A4128: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25132))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1104))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); { 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_fpr_12 = ctx.fpr[15] + aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); goto L_088A4148; L_088A4148: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1108))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1108))); goto L_088A416C; } goto L_088A4160; L_088A4160: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1108))); { const bool branch_taken = 0u == 0u; aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); if (branch_taken) { goto L_088A416C; } goto L_088A416C; } L_088A416C: aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A41A4; } goto L_088A4188; } L_088A4188: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25124))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); { 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; } { const float fs = aot_fpr_13; 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_fpr_12 = ctx.fpr[15] - aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); goto L_088A41A4; L_088A41A4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1064))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A41C8; } goto L_088A41BC; } L_088A41BC: aot_fpr_12 = std::bit_cast(0u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A41F0; } goto L_088A41C8; } L_088A41C8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25140))); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + 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); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(320)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = 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); } goto L_088A41F0; L_088A41F0: aot_gpr_4 = (16544u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); 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(32)); { 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(144)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_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_5 = (aot_gpr_29 + static_cast(160)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(16); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + 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); } aot_gpr_6 = (aot_gpr_16 + static_cast(192)); { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } ctx.execute_vfpu_vtfm_ct<0u, 36u, 7u, 3u, 3u>(); aot_gpr_6 = (aot_gpr_29 + static_cast(128)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { 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); } { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 0u>(); ctx.gpr[7] = (aot_gpr_29 + static_cast(112)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[7] + 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[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<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_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(32)); { 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_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); aot_gpr_4 = (15523u << 16u); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 16u>(); aot_gpr_4 = (aot_gpr_29 + 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); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(176)); { 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 = (2238u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(14064))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1164), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; aot_gpr_4 = (aot_gpr_16 + static_cast(32)); if (branch_taken) { goto L_088A4374; } goto L_088A42CC; } L_088A42CC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); aot_gpr_4 = (48896u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4374; } goto L_088A42E8; } L_088A42E8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(320))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) & 0x7FFFFFFFu); aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4374; } goto L_088A430C; } L_088A430C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(324))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) & 0x7FFFFFFFu); aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4374; } goto L_088A4330; } L_088A4330: aot_gpr_4 = (15605u << 16u); aot_gpr_4 = (aot_gpr_4 | 49807u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + 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); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(336)); { 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(336), 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 = (0x088A436Cu); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A436Cu) goto L_088A436C; AOT_REGCACHE_SYNC_OUT(); return; L_088A436C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A4388; } goto L_088A4374; } L_088A4374: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(48), 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 = (0x088A4388u); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4388u) goto L_088A4388; AOT_REGCACHE_SYNC_OUT(); return; L_088A4388: { const bool branch_taken = ctx.gpr[18] == 0u; if (branch_taken) { goto L_088A43D8; } goto L_088A4390; } L_088A4390: aot_gpr_4 = (16076u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + 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); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(352)); { 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(352), 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]); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(32), aot_run_words); ctx.fpr[15] = std::bit_cast(aot_run_words[0]); ctx.fpr[16] = std::bit_cast(aot_run_words[1]); ctx.fpr[17] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x088A43D8u); 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, 611u, 0x08A66E08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A43D8u) goto L_088A43D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A43D8: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A461C; } goto L_088A43E8; } L_088A43E8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1088))); aot_fpr_13 = std::bit_cast(0u); 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 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A44CC; } goto L_088A4400; } L_088A4400: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); aot_gpr_4 = (48896u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (aot_gpr_16 + static_cast(32)); if (branch_taken) { goto L_088A461C; } goto L_088A441C; } L_088A441C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); aot_gpr_4 = (48896u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (48665u << 16u); if (branch_taken) { goto L_088A461C; } goto L_088A4438; } L_088A4438: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(328))); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (15395u << 16u); if (branch_taken) { goto L_088A461C; } goto L_088A4454; } L_088A4454: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (15363u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { 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; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[16]; 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; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[15] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (16076u << 16u); if (branch_taken) { goto L_088A461C; } goto L_088A4490; } L_088A4490: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (15363u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { 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; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[16]; 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; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[15] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A461C; } goto L_088A44CC; } L_088A44CC: ctx.gpr[19] = (aot_gpr_16 + static_cast(16)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[19] + static_cast(8))); aot_gpr_4 = (47410u << 16u); aot_gpr_4 = (aot_gpr_4 | 16903u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); { 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; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(212))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[15]; 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; } ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[16]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[20] = (aot_gpr_29 + static_cast(368)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[20] + 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(368), 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 = (aot_gpr_16 + static_cast(32)); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_4 + static_cast(0), aot_run_words); ctx.fpr[15] = std::bit_cast(aot_run_words[0]); ctx.fpr[16] = std::bit_cast(aot_run_words[1]); ctx.fpr[17] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x088A4538u); 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, 611u, 0x08A66E08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4538u) goto L_088A4538; AOT_REGCACHE_SYNC_OUT(); return; L_088A4538: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_5 = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(1060), static_cast(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); } { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (48896u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); { 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 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.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 = ctx.gpr[20] + 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(368), 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 = (0x088A459Cu); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A459Cu) goto L_088A459C; AOT_REGCACHE_SYNC_OUT(); return; L_088A459C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1088))); aot_fpr_13 = std::bit_cast(0u); 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); if (branch_taken) { goto L_088A45E4; } goto L_088A45B4; } L_088A45B4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const bool branch_taken = static_cast(aot_gpr_4) >= 0; aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); if (branch_taken) { goto L_088A45D0; } goto L_088A45C4; } L_088A45C4: aot_gpr_4 = (20352u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 + aot_fpr_13; goto L_088A45D0; L_088A45D0: aot_gpr_4 = (17302u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 + aot_fpr_13; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1088), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A461C; } goto L_088A45E4; } L_088A45E4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const bool branch_taken = static_cast(aot_gpr_4) >= 0; aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); if (branch_taken) { goto L_088A4600; } goto L_088A45F4; } L_088A45F4: aot_gpr_4 = (20352u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 + aot_fpr_13; goto L_088A4600; L_088A4600: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1088))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A461C; } goto L_088A4614; } L_088A4614: aot_fpr_12 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1088), std::bit_cast(aot_fpr_12)); goto L_088A461C; L_088A461C: 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_088A4638; } goto L_088A462C; } L_088A462C: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A4638u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 41u, 0x088A8374u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4638u) goto L_088A4638; AOT_REGCACHE_SYNC_OUT(); return; L_088A4638: { const bool branch_taken = ctx.gpr[17] != 0u; if (branch_taken) { goto L_088A47E8; } goto L_088A4640; } L_088A4640: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A47E8; } goto L_088A4650; } L_088A4650: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(40))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A47E8; } goto L_088A4668; } L_088A4668: 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_vdot_ct<28u, 0u, 0u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(12))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(56))); { 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; } { const float fs = aot_fpr_13; 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; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[15]; 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 = (16128u << 16u); ctx.fpr[16] = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = ctx.fpr[16]; 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 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A46CC; } goto L_088A46B4; } L_088A46B4: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_gpr_4 = (16256u << 16u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 + aot_fpr_14; { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } if (branch_taken) { goto L_088A46FC; } goto L_088A46CC; } L_088A46CC: aot_gpr_4 = (15692u << 16u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A46F8; } goto L_088A46EC; } L_088A46EC: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } if (branch_taken) { goto L_088A46FC; } goto L_088A46F8; } L_088A46F8: aot_fpr_12 = std::bit_cast(0u); goto L_088A46FC; L_088A46FC: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_gpr_5 = (15363u << 16u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(16))); aot_gpr_4 = (aot_gpr_5 | 4719u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); { 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; } ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_13; const float ft = ctx.fpr[15]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } { const float fs = aot_fpr_13; const float ft = ctx.fpr[16]; 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; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A475C; } goto L_088A4734; } L_088A4734: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_gpr_5 = (15363u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(16))); aot_gpr_4 = (aot_gpr_5 | 4719u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { 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; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[15]; 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_088A475C; L_088A475C: 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(32)); { 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(416)); { 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(416), 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 = (0x088A478Cu); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A478Cu) goto L_088A478C; AOT_REGCACHE_SYNC_OUT(); return; L_088A478C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(20))); 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>(); aot_gpr_4 = (aot_gpr_29 + static_cast(400)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (aot_gpr_29 + static_cast(32)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 1u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(384)); { 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); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(416), 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]); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(384), aot_run_words); ctx.fpr[15] = std::bit_cast(aot_run_words[0]); ctx.fpr[16] = std::bit_cast(aot_run_words[1]); ctx.fpr[17] = std::bit_cast(aot_run_words[2]); } aot_gpr_31 = (0x088A47E8u); 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, 611u, 0x08A66E08u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A47E8u) goto L_088A47E8; AOT_REGCACHE_SYNC_OUT(); return; L_088A47E8: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(617)))))); aot_gpr_5 = (16256u << 16u); aot_gpr_4 = (aot_gpr_4 & 4u); { const bool branch_taken = aot_gpr_4 != 0u; aot_fpr_12 = std::bit_cast(aot_gpr_5); if (branch_taken) { goto L_088A57D0; } goto L_088A47FC; } L_088A47FC: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_13) & 0x7FFFFFFFu); aot_gpr_4 = (15692u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4854; } goto L_088A4820; } L_088A4820: 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_vdot_ct<28u, 0u, 0u, 2u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (15395u << 16u); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A57D0; } goto L_088A4854; } L_088A4854: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A48A0; } goto L_088A4864; } L_088A4864: aot_gpr_31 = (0x088A486Cu); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B61B60, 215u, 341u, 0x08B61B60u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], ctx.gpr[3], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_29, aot_gpr_31, aot_fpr_12); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0215_entry, 215u, 341u, 0x08B61B60u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A486Cu) goto L_088A486C; AOT_REGCACHE_SYNC_OUT(); return; L_088A486C: ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25060))); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25064))); aot_gpr_5 = (ctx.gpr[3] | 0u); aot_gpr_31 = (0x088A4880u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_08B6256C, 215u, 478u, 0x08B6256Cu>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], ctx.gpr[3], aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], ctx.gpr[8], ctx.gpr[9], ctx.gpr[10], aot_gpr_16, aot_gpr_29, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0215_entry, 215u, 478u, 0x08B6256Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4880u) goto L_088A4880; AOT_REGCACHE_SYNC_OUT(); return; L_088A4880: { const bool branch_taken = static_cast(ctx.gpr[2]) <= 0; if (branch_taken) { goto L_088A48A0; } goto L_088A4888; } L_088A4888: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(716))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A48A0; } goto L_088A4894; } L_088A4894: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(716))); aot_gpr_31 = (0x088A48A0u); aot_gpr_5 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0156_entry, 156u, 734u, 0x08A77A90u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A48A0u) goto L_088A48A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A48A0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (16256u << 16u); aot_gpr_4 = (aot_gpr_4 & 496u); { const bool branch_taken = aot_gpr_4 != 0u; aot_fpr_20 = std::bit_cast(aot_gpr_5); if (branch_taken) { goto L_088A4958; } goto L_088A48B4; } L_088A48B4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(112))); 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); } 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<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } 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_088A4910; } goto L_088A48EC; } L_088A48EC: aot_gpr_31 = (0x088A48F4u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A48F4u) goto L_088A48F4; AOT_REGCACHE_SYNC_OUT(); return; L_088A48F4: aot_gpr_31 = (0x088A48FCu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 367u, 0x0898D050u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A48FCu) goto L_088A48FC; AOT_REGCACHE_SYNC_OUT(); return; L_088A48FC: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A4910; } goto L_088A4904; } L_088A4904: aot_gpr_4 = (16128u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } goto L_088A4910; L_088A4910: aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(0u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_20 = aot_fpr_13 - aot_fpr_20; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4938; } goto L_088A4930; } L_088A4930: { const bool branch_taken = 0u == 0u; aot_fpr_20 = std::bit_cast(0u); if (branch_taken) { goto L_088A4958; } goto L_088A4938; } L_088A4938: aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4958; } goto L_088A4950; } L_088A4950: aot_gpr_4 = (16256u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); goto L_088A4958; L_088A4958: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + 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))); aot_gpr_4 = (aot_gpr_4 + 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); } aot_gpr_4 = (aot_gpr_29 + static_cast(448)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(448), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(452))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(0))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(452), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(456))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(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_mem.aot_direct_store32(aot_gpr_29 + static_cast(456), std::bit_cast(aot_fpr_12)); { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(16); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(32); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<6u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_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<7u, 4u>(vfpu_value); } ctx.execute_vfpu_vtfm_ct<0u, 36u, 7u, 3u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(432)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (aot_gpr_16 + static_cast(48)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { 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>(); aot_gpr_4 = (aot_gpr_29 + static_cast(464)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); { const float fs = aot_fpr_12; const float ft = aot_fpr_20; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_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(0x3F22F983u); 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_vec3_ct<64u, 0u, 32u, 1u, 2u>(); ctx.execute_vfpu_unary_ct<1u, 64u, 1u, 18u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<1u>()); ctx.fpr[22] = std::bit_cast(aot_gpr_4); 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(0x3F22F983u); 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_vec3_ct<64u, 0u, 32u, 1u, 2u>(); ctx.execute_vfpu_unary_ct<1u, 64u, 1u, 19u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<1u>()); ctx.fpr[24] = std::bit_cast(aot_gpr_4); { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(464), 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 = (aot_gpr_29 + static_cast(480)); aot_gpr_31 = (0x088A4A44u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0189_entry, 189u, 115u, 0x08AF8668u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4A44u) goto L_088A4A44; AOT_REGCACHE_SYNC_OUT(); return; L_088A4A44: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(472))); aot_gpr_4 = (16128u << 16u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 - aot_fpr_14; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A57C0; } goto L_088A4A68; } L_088A4A68: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(472))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); aot_gpr_4 = (16128u << 16u); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_gpr_5 = (16256u << 16u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fpr[15] = std::bit_cast(aot_gpr_5); aot_fpr_12 = aot_fpr_12 + aot_fpr_14; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= ctx.fpr[15])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(480), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A4AA8; } goto L_088A4A98; } L_088A4A98: aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(480), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A4AB4; } goto L_088A4AA8; } L_088A4AA8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); { const float fs = aot_fpr_12; 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_29 + static_cast(480), std::bit_cast(aot_fpr_12)); goto L_088A4AB4; L_088A4AB4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 | 2u); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(1060), static_cast(aot_gpr_4)); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_16 + static_cast(86)))))); aot_gpr_5 = (0u | 278u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; ctx.gpr[19] = (0u | 0u); if (branch_taken) { goto L_088A5514; } goto L_088A4AD0; } L_088A4AD0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) & 0x7FFFFFFFu); aot_gpr_4 = (16128u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4B04; } goto L_088A4AF0; } L_088A4AF0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 496u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A4B04; } goto L_088A4B00; } L_088A4B00: ctx.gpr[19] = (0u | 1u); goto L_088A4B04; L_088A4B04: 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); } 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<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[26] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_14 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4BA0; } goto L_088A4B40; } L_088A4B40: 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_vdot_ct<28u, 0u, 0u, 3u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (14979u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4BA0; } goto L_088A4B70; } L_088A4B70: aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4BA0; } goto L_088A4B84; } L_088A4B84: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_5 = (14801u << 16u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(96))); aot_gpr_4 = (aot_gpr_5 | 46871u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 / aot_fpr_14; { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } goto L_088A4BA0; L_088A4BA0: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); ctx.fpr[16] = std::bit_cast(0u); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[15] < ctx.fpr[16])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); { 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; } if (branch_taken) { goto L_088A4BCC; } goto L_088A4BC0; } L_088A4BC0: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); { const bool branch_taken = 0u == 0u; aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_14) ^ 0x80000000u); if (branch_taken) { goto L_088A4BD0; } goto L_088A4BCC; } L_088A4BCC: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); goto L_088A4BD0; L_088A4BD0: aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_14) ^ 0x80000000u); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_13), std::bit_cast(ctx.fpr[24]), std::bit_cast(aot_fpr_14)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(640), aot_run_words); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(16); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + 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); } aot_gpr_4 = (aot_gpr_29 + static_cast(640)); { 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<7u, 4u>(vfpu_value); } ctx.execute_vfpu_vtfm_ct<0u, 36u, 7u, 3u, 3u>(); aot_gpr_4 = (aot_gpr_29 + static_cast(624)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); { 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(608)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_14 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < aot_fpr_14)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); goto L_088A4C3C; } goto L_088A4C30; L_088A4C30: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); { const bool branch_taken = 0u == 0u; aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); if (branch_taken) { goto L_088A4C3C; } goto L_088A4C3C; } L_088A4C3C: aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); aot_gpr_4 = (aot_gpr_29 + static_cast(608)); { 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(592)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (16928u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_5); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); { 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(576)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(72))); aot_gpr_5 = (std::bit_cast(aot_fpr_13)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); { 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(560)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); aot_gpr_5 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); { 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(544)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (aot_gpr_29 + static_cast(496)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(0u); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_12)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(512), aot_run_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) & 0x7FFFFFFFu); aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4EA8; } goto L_088A4CF4; } L_088A4CF4: aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(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_vdot_ct<28u, 0u, 0u, 2u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (15897u << 16u); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_14 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (15897u << 16u); if (branch_taken) { goto L_088A4D40; } goto L_088A4D30; } L_088A4D30: aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 / aot_fpr_14; { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } goto L_088A4D40; L_088A4D40: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_14 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 < aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4D5C; } goto L_088A4D58; } L_088A4D58: aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); goto L_088A4D5C; L_088A4D5C: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); ctx.fpr[15] = std::bit_cast(0u); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); aot_fpr_14 = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); ctx.gpr[20] = (aot_gpr_29 + static_cast(512)); ctx.gpr[21] = (aot_gpr_29 + static_cast(784)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[16] < ctx.fpr[15])) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (aot_gpr_29 + static_cast(800)); if (branch_taken) { goto L_088A4D90; } goto L_088A4D84; } L_088A4D84: ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); { const bool branch_taken = 0u == 0u; ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[15]) ^ 0x80000000u); if (branch_taken) { goto L_088A4D94; } goto L_088A4D90; } L_088A4D90: ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(600))); goto L_088A4D94; L_088A4D94: ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[15]) ^ 0x80000000u); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_14), std::bit_cast(ctx.fpr[24]), std::bit_cast(ctx.fpr[15])}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(880), aot_run_words); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(16); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = aot_gpr_16 + 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); } aot_gpr_5 = (aot_gpr_29 + static_cast(880)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } ctx.execute_vfpu_vtfm_ct<0u, 36u, 7u, 3u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(864)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (std::bit_cast(aot_fpr_13)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(848)); { 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); } ctx.fpr[24] = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] < aot_fpr_14)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { ctx.fpr[24] = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); goto L_088A4DF4; } goto L_088A4DF4; L_088A4DF4: aot_gpr_5 = (std::bit_cast(ctx.fpr[24])); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_5); aot_gpr_5 = (aot_gpr_29 + static_cast(848)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(832)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (16928u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_6 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_6); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(816)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_31 = (0x088A4E3Cu); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(72))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4E3Cu) goto L_088A4E3C; AOT_REGCACHE_SYNC_OUT(); return; L_088A4E3C: aot_gpr_5 = (aot_gpr_29 + static_cast(800)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); aot_gpr_31 = (0x088A4E4Cu); aot_gpr_4 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4E4Cu) goto L_088A4E4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A4E4C: aot_gpr_5 = (aot_gpr_29 + static_cast(784)); aot_gpr_31 = (0x088A4E58u); aot_gpr_4 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4E58u) goto L_088A4E58; AOT_REGCACHE_SYNC_OUT(); return; L_088A4E58: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(520))); aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (16281u << 16u); if (branch_taken) { goto L_088A4EA0; } goto L_088A4E78; } L_088A4E78: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(520))); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_14 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; 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_fpr_12 = aot_fpr_12 + aot_fpr_14; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(520), std::bit_cast(aot_fpr_12)); goto L_088A4EA0; L_088A4EA0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A4EB4; } goto L_088A4EA8; } L_088A4EA8: aot_gpr_4 = (aot_gpr_29 + static_cast(512)); aot_gpr_31 = (0x088A4EB4u); aot_gpr_5 = (aot_gpr_29 + static_cast(496)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4EB4u) goto L_088A4EB4; AOT_REGCACHE_SYNC_OUT(); return; L_088A4EB4: aot_gpr_4 = (16204u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(504))); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4F50; } goto L_088A4ED4; } L_088A4ED4: aot_gpr_4 = (aot_gpr_29 + static_cast(1008)); aot_gpr_31 = (0x088A4EE0u); aot_gpr_5 = (aot_gpr_16 + static_cast(48)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4EE0u) goto L_088A4EE0; AOT_REGCACHE_SYNC_OUT(); return; L_088A4EE0: aot_fpr_12 = std::bit_cast(0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1008))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1024), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_13)); aot_gpr_4 = (aot_gpr_29 + static_cast(1024)); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1012))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1016))); aot_gpr_31 = (0x088A4F04u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0189_entry, 189u, 115u, 0x08AF8668u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4F04u) goto L_088A4F04; AOT_REGCACHE_SYNC_OUT(); return; L_088A4F04: if (ctx.gpr[2] == 0u) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(496))); goto L_088A4F28; } goto L_088A4F0C; L_088A4F0C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1016))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1024))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4F48; } goto L_088A4F24; } L_088A4F24: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(496))); goto L_088A4F28; L_088A4F28: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25112))); ctx.fpr[15] = std::bit_cast(0u); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(500))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(504), std::bit_cast(ctx.fpr[15])); { 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_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(496), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(500), std::bit_cast(aot_fpr_13)); goto L_088A4F48; L_088A4F48: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A4F98; } goto L_088A4F50; } L_088A4F50: aot_gpr_4 = (15948u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(504))); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (16281u << 16u); if (branch_taken) { goto L_088A4F98; } goto L_088A4F70; } L_088A4F70: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(504))); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_14 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; 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_fpr_12 = aot_fpr_12 + aot_fpr_14; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(504), std::bit_cast(aot_fpr_12)); goto L_088A4F98; L_088A4F98: { const bool branch_taken = ctx.gpr[17] != 0u; if (branch_taken) { goto L_088A5178; } goto L_088A4FA0; } L_088A4FA0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A4FF4; } goto L_088A4FB8; } L_088A4FB8: ctx.gpr[20] = (aot_gpr_29 + static_cast(1088)); aot_gpr_5 = (aot_gpr_29 + static_cast(496)); aot_gpr_31 = (0x088A4FC8u); aot_gpr_4 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 552u, 0x088A268Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4FC8u) goto L_088A4FC8; AOT_REGCACHE_SYNC_OUT(); return; L_088A4FC8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_4 = (aot_gpr_29 + static_cast(1072)); aot_gpr_31 = (0x088A4FD8u); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4FD8u) goto L_088A4FD8; AOT_REGCACHE_SYNC_OUT(); return; L_088A4FD8: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(1072), 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 = (0x088A4FECu); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A4FECu) goto L_088A4FEC; AOT_REGCACHE_SYNC_OUT(); return; L_088A4FEC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A5018; } goto L_088A4FF4; } L_088A4FF4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_4 = (aot_gpr_29 + static_cast(1104)); aot_gpr_31 = (0x088A5004u); aot_gpr_5 = (aot_gpr_29 + static_cast(496)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5004u) goto L_088A5004; AOT_REGCACHE_SYNC_OUT(); return; L_088A5004: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(1104), 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 = (0x088A5018u); 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, 600u, 0x08A66CD8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5018u) goto L_088A5018; AOT_REGCACHE_SYNC_OUT(); return; L_088A5018: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[26] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5084; } goto L_088A502C; } L_088A502C: ctx.gpr[20] = (aot_gpr_29 + static_cast(1136)); aot_gpr_5 = (aot_gpr_29 + static_cast(512)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_31 = (0x088A5040u); aot_gpr_4 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5040u) goto L_088A5040; AOT_REGCACHE_SYNC_OUT(); return; L_088A5040: ctx.gpr[21] = (aot_gpr_29 + static_cast(1168)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); aot_gpr_5 = (aot_gpr_16 + static_cast(32)); aot_gpr_31 = (0x088A5058u); aot_gpr_4 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5058u) goto L_088A5058; AOT_REGCACHE_SYNC_OUT(); return; L_088A5058: aot_gpr_4 = (aot_gpr_29 + 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); } { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vec3_ct<0u, 0u, 1u, 3u, 1u>(); aot_gpr_6 = (aot_gpr_29 + static_cast(1152)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_6 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A507Cu); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 593u, 0x088A295Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A507Cu) goto L_088A507C; AOT_REGCACHE_SYNC_OUT(); return; L_088A507C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A50F8; } goto L_088A5084; } L_088A5084: ctx.gpr[20] = (aot_gpr_29 + static_cast(1200)); ctx.gpr[21] = (aot_gpr_29 + static_cast(1184)); aot_gpr_5 = (aot_gpr_29 + static_cast(512)); aot_gpr_31 = (0x088A5098u); aot_gpr_4 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 552u, 0x088A268Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5098u) goto L_088A5098; AOT_REGCACHE_SYNC_OUT(); return; L_088A5098: aot_gpr_31 = (0x088A50A0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50A0u) goto L_088A50A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A50A0: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A50B0u); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50B0u) goto L_088A50B0; AOT_REGCACHE_SYNC_OUT(); return; L_088A50B0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); ctx.gpr[20] = (aot_gpr_29 + static_cast(1216)); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(8))); ctx.gpr[22] = (aot_gpr_29 + static_cast(1232)); aot_gpr_31 = (0x088A50C8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 575u, 0x088A2828u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50C8u) goto L_088A50C8; AOT_REGCACHE_SYNC_OUT(); return; L_088A50C8: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_31 = (0x088A50D8u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50D8u) goto L_088A50D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A50D8: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_5 = (aot_gpr_29 + static_cast(448)); aot_gpr_31 = (0x088A50E8u); aot_gpr_6 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 554u, 0x088A26B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50E8u) goto L_088A50E8; AOT_REGCACHE_SYNC_OUT(); return; L_088A50E8: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A50F8u); aot_gpr_6 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 593u, 0x088A295Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A50F8u) goto L_088A50F8; AOT_REGCACHE_SYNC_OUT(); return; L_088A50F8: aot_gpr_31 = (0x088A5100u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 573u, 0x088A2818u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5100u) goto L_088A5100; AOT_REGCACHE_SYNC_OUT(); return; L_088A5100: aot_gpr_5 = (aot_gpr_29 + static_cast(512)); aot_gpr_31 = (0x088A510Cu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 551u, 0x088A2670u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A510Cu) goto L_088A510C; AOT_REGCACHE_SYNC_OUT(); return; L_088A510C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_31 = (0x088A5118u); ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 595u, 0x088A298Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5118u) goto L_088A5118; AOT_REGCACHE_SYNC_OUT(); return; L_088A5118: { const float fs = ctx.fpr[24]; 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; } ctx.gpr[20] = (aot_gpr_29 + static_cast(1040)); ctx.gpr[21] = (aot_gpr_29 + static_cast(1056)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A5130u); ctx.fpr[26] = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 573u, 0x088A2818u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5130u) goto L_088A5130; AOT_REGCACHE_SYNC_OUT(); return; L_088A5130: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A5140u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5140u) goto L_088A5140; AOT_REGCACHE_SYNC_OUT(); return; L_088A5140: aot_gpr_31 = (0x088A5148u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5148u) goto L_088A5148; AOT_REGCACHE_SYNC_OUT(); return; L_088A5148: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5158u); aot_gpr_5 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5158u) goto L_088A5158; AOT_REGCACHE_SYNC_OUT(); return; L_088A5158: aot_gpr_31 = (0x088A5160u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 575u, 0x088A2828u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5160u) goto L_088A5160; AOT_REGCACHE_SYNC_OUT(); return; L_088A5160: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A5170u); aot_gpr_6 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 593u, 0x088A295Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5170u) goto L_088A5170; AOT_REGCACHE_SYNC_OUT(); return; L_088A5170: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A51F4; } goto L_088A5178; } L_088A5178: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A51B0; } goto L_088A5190; } L_088A5190: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(496))); aot_gpr_4 = (16544u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(500))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { 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_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(496), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(500), std::bit_cast(aot_fpr_13)); goto L_088A51B0; L_088A51B0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(504))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A51D0; } goto L_088A51C8; } L_088A51C8: aot_fpr_12 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(504), std::bit_cast(aot_fpr_12)); goto L_088A51D0; L_088A51D0: aot_gpr_31 = (0x088A51D8u); ctx.gpr[20] = (aot_gpr_29 + static_cast(1248)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A51D8u) goto L_088A51D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A51D8: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A51E8u); aot_gpr_5 = (aot_gpr_29 + static_cast(496)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A51E8u) goto L_088A51E8; AOT_REGCACHE_SYNC_OUT(); return; L_088A51E8: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A51F4u); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 591u, 0x088A2938u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A51F4u) goto L_088A51F4; AOT_REGCACHE_SYNC_OUT(); return; L_088A51F4: aot_gpr_6 = (48419u << 16u); aot_gpr_6 = (aot_gpr_6 | 55050u); aot_gpr_4 = (aot_gpr_29 + static_cast(528)); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_31 = (0x088A520Cu); aot_gpr_5 = (aot_gpr_29 + static_cast(496)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A520Cu) goto L_088A520C; AOT_REGCACHE_SYNC_OUT(); return; L_088A520C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(604))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A550C; } goto L_088A5224; } L_088A5224: aot_gpr_31 = (0x088A522Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 585u, 0x088A28B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A522Cu) goto L_088A522C; AOT_REGCACHE_SYNC_OUT(); return; L_088A522C: { const bool branch_taken = ctx.gpr[2] != 0u; aot_gpr_4 = (2236u << 16u); if (branch_taken) { goto L_088A5380; } goto L_088A5234; } L_088A5234: aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_gpr_5 = (aot_mem.aot_direct_load8(aot_gpr_4 + static_cast(80))); aot_gpr_5 = (aot_gpr_5 << 5u); aot_gpr_6 = (0u - aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_6 = (aot_gpr_6 + aot_gpr_5); aot_gpr_5 = (aot_gpr_5 << 2u); aot_gpr_5 = (aot_gpr_6 + aot_gpr_5); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(aot_gpr_4 + static_cast(112)))))); aot_gpr_5 = (0u | 1u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; ctx.gpr[20] = (0u | 0u); if (branch_taken) { goto L_088A5280; } goto L_088A5268; } L_088A5268: aot_gpr_5 = (2236u << 16u); aot_gpr_5 = (aot_gpr_5 + static_cast(32304)); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(2048))); aot_gpr_4 = (0u | 3u); { const bool branch_taken = aot_gpr_5 != aot_gpr_4; if (branch_taken) { goto L_088A5284; } goto L_088A5280; } L_088A5280: ctx.gpr[20] = (0u | 1u); goto L_088A5284; L_088A5284: ctx.gpr[21] = (aot_gpr_29 + static_cast(1280)); aot_gpr_31 = (0x088A5290u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 586u, 0x088A28C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5290u) goto L_088A5290; AOT_REGCACHE_SYNC_OUT(); return; L_088A5290: aot_gpr_31 = (0x088A5298u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 582u, 0x088A2890u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5298u) goto L_088A5298; AOT_REGCACHE_SYNC_OUT(); return; L_088A5298: aot_gpr_31 = (0x088A52A0u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 583u, 0x088A28A8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52A0u) goto L_088A52A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A52A0: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A52ACu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52ACu) goto L_088A52AC; AOT_REGCACHE_SYNC_OUT(); return; L_088A52AC: aot_fpr_12 = std::bit_cast(0u); ctx.gpr[22] = (aot_gpr_29 + static_cast(1264)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1280), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1288), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A52CCu); aot_gpr_6 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 548u, 0x088A2608u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52CCu) goto L_088A52CC; AOT_REGCACHE_SYNC_OUT(); return; L_088A52CC: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A52D8u); aot_gpr_5 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52D8u) goto L_088A52D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A52D8: aot_gpr_31 = (0x088A52E0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52E0u) goto L_088A52E0; AOT_REGCACHE_SYNC_OUT(); return; L_088A52E0: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_5 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x088A52F0u); aot_gpr_6 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 553u, 0x088A26A0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52F0u) goto L_088A52F0; AOT_REGCACHE_SYNC_OUT(); return; L_088A52F0: aot_gpr_4 = (aot_gpr_29 + static_cast(1296)); aot_gpr_31 = (0x088A52FCu); aot_gpr_5 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A52FCu) goto L_088A52FC; AOT_REGCACHE_SYNC_OUT(); return; L_088A52FC: { const bool branch_taken = ctx.gpr[20] == 0u; if (branch_taken) { goto L_088A5314; } goto L_088A5304; } L_088A5304: aot_gpr_4 = (16256u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1304), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A531C; } goto L_088A5314; } L_088A5314: aot_fpr_12 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1304), std::bit_cast(aot_fpr_12)); goto L_088A531C; L_088A531C: ctx.gpr[20] = (aot_gpr_29 + static_cast(1312)); aot_gpr_31 = (0x088A5328u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5328u) goto L_088A5328; AOT_REGCACHE_SYNC_OUT(); return; L_088A5328: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A5334u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5334u) goto L_088A5334; AOT_REGCACHE_SYNC_OUT(); return; L_088A5334: aot_gpr_5 = (aot_gpr_29 + static_cast(1280)); aot_gpr_31 = (0x088A5340u); aot_gpr_4 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08A931B8, 163u, 0x08A931B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5340u) goto L_088A5340; AOT_REGCACHE_SYNC_OUT(); return; L_088A5340: aot_gpr_4 = (16166u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1320))); aot_gpr_4 = (aot_gpr_4 | 26214u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.gpr[20] = (aot_gpr_29 + static_cast(1328)); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; aot_gpr_5 = (aot_gpr_29 + static_cast(528)); aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A5368u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1320), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5368u) goto L_088A5368; AOT_REGCACHE_SYNC_OUT(); return; L_088A5368: aot_gpr_5 = (16192u << 16u); aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A5378u); aot_fpr_12 = std::bit_cast(aot_gpr_5); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 572u, 0x088A27FCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5378u) goto L_088A5378; AOT_REGCACHE_SYNC_OUT(); return; L_088A5378: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A550C; } goto L_088A5380; } L_088A5380: aot_gpr_31 = (0x088A5388u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0179_entry, 179u, 51u, 0x08AD0598u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5388u) goto L_088A5388; AOT_REGCACHE_SYNC_OUT(); return; L_088A5388: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A550C; } goto L_088A5390; } L_088A5390: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(76))); aot_gpr_5 = (16320u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7764))); aot_gpr_4 = (aot_gpr_4 >> 22u); aot_gpr_4 = (aot_gpr_5 + aot_gpr_4); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A550C; } goto L_088A53B4; } L_088A53B4: aot_gpr_31 = (0x088A53BCu); aot_gpr_4 = (aot_gpr_29 + static_cast(464)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0080_entry, 80u, 400u, 0x0894624Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A53BCu) goto L_088A53BC; AOT_REGCACHE_SYNC_OUT(); return; L_088A53BC: aot_gpr_4 = (2236u << 16u); aot_gpr_4 = (aot_gpr_4 + static_cast(32304)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(1952))); aot_gpr_4 = (17036u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_12; 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; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A550C; } goto L_088A53E8; } L_088A53E8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(528))); aot_gpr_4 = (16480u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(532))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(472))); aot_gpr_5 = (16128u << 16u); ctx.fpr[26] = std::bit_cast(0u); aot_gpr_4 = (15477u << 16u); ctx.fpr[24] = std::bit_cast(aot_gpr_5); aot_gpr_4 = (aot_gpr_4 | 49807u); { 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_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(528), std::bit_cast(aot_fpr_12)); ctx.fpr[16] = std::bit_cast(aot_gpr_4); ctx.gpr[20] = (aot_gpr_29 + static_cast(464)); aot_gpr_4 = (16288u << 16u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.fpr[28] = std::bit_cast(aot_gpr_4); ctx.gpr[21] = (aot_gpr_29 + static_cast(528)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(532), std::bit_cast(aot_fpr_13)); aot_fpr_13 = ctx.fpr[15] + ctx.fpr[24]; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(536), std::bit_cast(ctx.fpr[16])); aot_gpr_4 = (16544u << 16u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(472), std::bit_cast(aot_fpr_13)); aot_gpr_31 = (0x088A5450u); aot_fpr_13 = std::bit_cast(aot_gpr_4); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 587u, 0x088A28D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5450u) goto L_088A5450; AOT_REGCACHE_SYNC_OUT(); return; L_088A5450: aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[0])); aot_gpr_4 = (17076u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A5468u); ctx.gpr[22] = (std::bit_cast(aot_fpr_14)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 587u, 0x088A28D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5468u) goto L_088A5468; AOT_REGCACHE_SYNC_OUT(); return; L_088A5468: aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[0])); ctx.gpr[23] = (0u | 500u); aot_gpr_4 = (0u | 45u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[28])); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_6 = (ctx.gpr[21] | 0u); ctx.gpr[10] = (std::bit_cast(aot_fpr_13)); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (aot_gpr_29 + static_cast(20)); ctx.gpr[9] = (ctx.gpr[22] | 0u); ctx.gpr[11] = (0u | 1u); aot_gpr_31 = (0x088A549Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[23]); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0063_entry, 63u, 90u, 0x0890043Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A549Cu) goto L_088A549C; AOT_REGCACHE_SYNC_OUT(); return; L_088A549C: ctx.gpr[22] = (aot_gpr_29 + static_cast(1344)); aot_gpr_6 = (16192u << 16u); aot_gpr_4 = (ctx.gpr[22] | 0u); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_31 = (0x088A54B4u); aot_gpr_5 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A54B4u) goto L_088A54B4; AOT_REGCACHE_SYNC_OUT(); return; L_088A54B4: aot_gpr_4 = (16880u << 16u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A54C4u); aot_fpr_13 = std::bit_cast(aot_gpr_4); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 587u, 0x088A28D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A54C4u) goto L_088A54C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A54C4: aot_fpr_14 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[0])); aot_gpr_4 = (16948u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A54DCu); ctx.gpr[21] = (std::bit_cast(aot_fpr_14)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 587u, 0x088A28D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A54DCu) goto L_088A54DC; AOT_REGCACHE_SYNC_OUT(); return; L_088A54DC: aot_fpr_13 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[0])); aot_gpr_4 = (0u | 44u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_6 = (ctx.gpr[22] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[10] = (std::bit_cast(aot_fpr_13)); ctx.gpr[8] = (aot_gpr_29 + static_cast(16)); ctx.gpr[9] = (ctx.gpr[21] | 0u); ctx.gpr[11] = (0u | 3u); aot_gpr_31 = (0x088A550Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), ctx.gpr[23]); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0063_entry, 63u, 90u, 0x0890043Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A550Cu) goto L_088A550C; AOT_REGCACHE_SYNC_OUT(); return; L_088A550C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A5518; } goto L_088A5514; } L_088A5514: ctx.gpr[19] = (0u | 1u); goto L_088A5518; L_088A5518: { const bool branch_taken = ctx.gpr[17] != 0u; if (branch_taken) { goto L_088A57B8; } goto L_088A5520; } L_088A5520: { const bool branch_taken = ctx.gpr[19] == 0u; if (branch_taken) { goto L_088A57B8; } goto L_088A5528; } L_088A5528: aot_gpr_31 = (0x088A5530u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 596u, 0x088A2994u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5530u) goto L_088A5530; AOT_REGCACHE_SYNC_OUT(); return; L_088A5530: ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A553Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A553Cu) goto L_088A553C; AOT_REGCACHE_SYNC_OUT(); return; L_088A553C: ctx.gpr[19] = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x088A5548u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 574u, 0x088A2820u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5548u) goto L_088A5548; AOT_REGCACHE_SYNC_OUT(); return; L_088A5548: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A5554u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 551u, 0x088A2670u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5554u) goto L_088A5554; AOT_REGCACHE_SYNC_OUT(); return; L_088A5554: aot_gpr_4 = (15395u << 16u); { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(212))); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5590; } goto L_088A557C; } L_088A557C: aot_gpr_4 = (15395u << 16u); ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(212))); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = ctx.fpr[24]; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } goto L_088A5590; L_088A5590: aot_gpr_31 = (0x088A5598u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 608u, 0x088A2A14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5598u) goto L_088A5598; AOT_REGCACHE_SYNC_OUT(); return; L_088A5598: aot_gpr_31 = (0x088A55A0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 567u, 0x088A27A0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A55A0u) goto L_088A55A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A55A0: aot_gpr_4 = (15395u << 16u); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5634; } goto L_088A55BC; } L_088A55BC: aot_gpr_31 = (0x088A55C4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 585u, 0x088A28B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A55C4u) goto L_088A55C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A55C4: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_088A5604; } goto L_088A55CC; } L_088A55CC: aot_gpr_31 = (0x088A55D4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 608u, 0x088A2A14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A55D4u) goto L_088A55D4; AOT_REGCACHE_SYNC_OUT(); return; L_088A55D4: aot_gpr_31 = (0x088A55DCu); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 567u, 0x088A27A0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A55DCu) goto L_088A55DC; AOT_REGCACHE_SYNC_OUT(); return; L_088A55DC: aot_gpr_4 = (16140u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 - ctx.fpr[0]; aot_gpr_4 = (16294u << 16u); aot_gpr_4 = (aot_gpr_4 | 26214u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } if (branch_taken) { goto L_088A5634; } goto L_088A5604; } L_088A5604: aot_gpr_31 = (0x088A560Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 608u, 0x088A2A14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A560Cu) goto L_088A560C; AOT_REGCACHE_SYNC_OUT(); return; L_088A560C: aot_gpr_31 = (0x088A5614u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 567u, 0x088A27A0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5614u) goto L_088A5614; AOT_REGCACHE_SYNC_OUT(); return; L_088A5614: aot_gpr_4 = (16140u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 - ctx.fpr[0]; aot_gpr_4 = (16320u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } goto L_088A5634; L_088A5634: aot_gpr_31 = (0x088A563Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 608u, 0x088A2A14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A563Cu) goto L_088A563C; AOT_REGCACHE_SYNC_OUT(); return; L_088A563C: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5664; } goto L_088A5650; } L_088A5650: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5694; } goto L_088A5664; } L_088A5664: aot_gpr_31 = (0x088A566Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 608u, 0x088A2A14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A566Cu) goto L_088A566C; AOT_REGCACHE_SYNC_OUT(); return; L_088A566C: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5698; } goto L_088A5680; } L_088A5680: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5698; } goto L_088A5694; } L_088A5694: ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[24]) ^ 0x80000000u); goto L_088A5698; L_088A5698: aot_fpr_13 = std::bit_cast(0u); ctx.gpr[22] = (aot_gpr_29 + static_cast(1408)); ctx.gpr[19] = (aot_gpr_29 + static_cast(496)); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); ctx.gpr[20] = (aot_gpr_29 + static_cast(1360)); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_13)); ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(480))); ctx.gpr[21] = (aot_gpr_29 + static_cast(1376)); ctx.gpr[23] = (aot_gpr_29 + static_cast(1392)); aot_gpr_31 = (0x088A56C4u); aot_gpr_4 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 568u, 0x088A27ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A56C4u) goto L_088A56C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A56C4: aot_gpr_4 = (ctx.gpr[23] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_31 = (0x088A56D4u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A56D4u) goto L_088A56D4; AOT_REGCACHE_SYNC_OUT(); return; L_088A56D4: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A56E4u); aot_gpr_6 = (ctx.gpr[23] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 548u, 0x088A2608u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A56E4u) goto L_088A56E4; AOT_REGCACHE_SYNC_OUT(); return; L_088A56E4: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A56F4u); aot_gpr_5 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A56F4u) goto L_088A56F4; AOT_REGCACHE_SYNC_OUT(); return; L_088A56F4: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A5700u); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5700u) goto L_088A5700; AOT_REGCACHE_SYNC_OUT(); return; L_088A5700: aot_gpr_31 = (0x088A5708u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5708u) goto L_088A5708; AOT_REGCACHE_SYNC_OUT(); return; L_088A5708: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5718u); aot_gpr_5 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5718u) goto L_088A5718; AOT_REGCACHE_SYNC_OUT(); return; L_088A5718: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A5724u); aot_gpr_5 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 591u, 0x088A2938u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5724u) goto L_088A5724; AOT_REGCACHE_SYNC_OUT(); return; L_088A5724: aot_gpr_31 = (0x088A572Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A572Cu) goto L_088A572C; AOT_REGCACHE_SYNC_OUT(); return; L_088A572C: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A573Cu); aot_gpr_5 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 556u, 0x088A26ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A573Cu) goto L_088A573C; AOT_REGCACHE_SYNC_OUT(); return; L_088A573C: aot_gpr_6 = (aot_gpr_29 + static_cast(448)); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A574Cu); aot_gpr_5 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 593u, 0x088A295Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A574Cu) goto L_088A574C; AOT_REGCACHE_SYNC_OUT(); return; L_088A574C: aot_gpr_4 = (16128u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_31 = (0x088A575Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1424), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A575Cu) goto L_088A575C; AOT_REGCACHE_SYNC_OUT(); return; L_088A575C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1428), std::bit_cast(ctx.fpr[0])); aot_gpr_5 = (aot_gpr_29 + static_cast(1428)); aot_gpr_31 = (0x088A576Cu); aot_gpr_4 = (aot_gpr_29 + static_cast(1424)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 563u, 0x088A274Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A576Cu) goto L_088A576C; AOT_REGCACHE_SYNC_OUT(); return; L_088A576C: { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (48960u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = aot_fpr_12 / aot_fpr_20; aot_gpr_4 = (aot_gpr_16 | 0u); { 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)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } aot_gpr_31 = (0x088A5790u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(480), std::bit_cast(ctx.fpr[24])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 573u, 0x088A2818u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5790u) goto L_088A5790; AOT_REGCACHE_SYNC_OUT(); return; L_088A5790: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_gpr_31 = (0x088A57A0u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A57A0u) goto L_088A57A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A57A0: aot_gpr_31 = (0x088A57A8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 575u, 0x088A2828u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A57A8u) goto L_088A57A8; AOT_REGCACHE_SYNC_OUT(); return; L_088A57A8: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A57B8u); aot_gpr_6 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 593u, 0x088A295Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A57B8u) goto L_088A57B8; AOT_REGCACHE_SYNC_OUT(); return; L_088A57B8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A57D0; } goto L_088A57C0; } L_088A57C0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_5 = (0u + static_cast(-3)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(1060), static_cast(aot_gpr_4)); goto L_088A57D0; L_088A57D0: aot_gpr_31 = (0x088A57D8u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 598u, 0x088A29A4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A57D8u) goto L_088A57D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A57D8: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(ctx.fpr[0]) || std::isnan(aot_fpr_12)) && ctx.fpr[0] == aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A58DC; } goto L_088A57EC; } L_088A57EC: ctx.gpr[19] = (aot_gpr_29 + static_cast(1472)); aot_gpr_31 = (0x088A57F8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 574u, 0x088A2820u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A57F8u) goto L_088A57F8; AOT_REGCACHE_SYNC_OUT(); return; L_088A57F8: ctx.gpr[20] = (aot_gpr_29 + static_cast(1440)); aot_fpr_20 = std::bit_cast(0u); aot_gpr_5 = (16256u << 16u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); ctx.gpr[21] = (ctx.gpr[2] | 0u); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A581Cu); aot_fpr_14 = std::bit_cast(aot_gpr_5); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 568u, 0x088A27ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A581Cu) goto L_088A581C; AOT_REGCACHE_SYNC_OUT(); return; L_088A581C: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A582Cu); aot_gpr_6 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 547u, 0x088A25F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A582Cu) goto L_088A582C; AOT_REGCACHE_SYNC_OUT(); return; L_088A582C: aot_gpr_31 = (0x088A5834u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5834u) goto L_088A5834; AOT_REGCACHE_SYNC_OUT(); return; L_088A5834: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x088A5840u); aot_gpr_5 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 551u, 0x088A2670u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5840u) goto L_088A5840; AOT_REGCACHE_SYNC_OUT(); return; L_088A5840: aot_gpr_31 = (0x088A5848u); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5848u) goto L_088A5848; AOT_REGCACHE_SYNC_OUT(); return; L_088A5848: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_31 = (0x088A5854u); ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 598u, 0x088A29A4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5854u) goto L_088A5854; AOT_REGCACHE_SYNC_OUT(); return; L_088A5854: aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); { const float fs = ctx.fpr[0]; 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_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1476))); aot_gpr_5 = (16025u << 16u); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } ctx.gpr[21] = (aot_gpr_29 + static_cast(1456)); aot_gpr_5 = (aot_gpr_5 | 39322u); aot_gpr_4 = (ctx.gpr[21] | 0u); ctx.fpr[26] = std::bit_cast(aot_gpr_5); { 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)) ctx.fpr[17] = std::bit_cast(0x7FC00000u); else ctx.fpr[17] = fs * ft; } aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[15]) ^ 0x80000000u); { const float fs = ctx.fpr[17]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[15] = std::bit_cast(0x7FC00000u); else ctx.fpr[15] = fs * ft; } aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1472))); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_31 = (0x088A58A4u); { const float fs = ctx.fpr[15]; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 568u, 0x088A27ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58A4u) goto L_088A58A4; AOT_REGCACHE_SYNC_OUT(); return; L_088A58A4: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A58B4u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58B4u) goto L_088A58B4; AOT_REGCACHE_SYNC_OUT(); return; L_088A58B4: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A58C0u); aot_gpr_5 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08A931B8, 163u, 0x08A931B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58C0u) goto L_088A58C0; AOT_REGCACHE_SYNC_OUT(); return; L_088A58C0: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24]) ^ 0x80000000u); aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A58D0u); aot_gpr_5 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58D0u) goto L_088A58D0; AOT_REGCACHE_SYNC_OUT(); return; L_088A58D0: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A58DCu); aot_gpr_5 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 591u, 0x088A2938u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58DCu) goto L_088A58DC; AOT_REGCACHE_SYNC_OUT(); return; L_088A58DC: aot_gpr_31 = (0x088A58E4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 585u, 0x088A28B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58E4u) goto L_088A58E4; AOT_REGCACHE_SYNC_OUT(); return; L_088A58E4: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_088A59B0; } goto L_088A58EC; } L_088A58EC: aot_gpr_31 = (0x088A58F4u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58F4u) goto L_088A58F4; AOT_REGCACHE_SYNC_OUT(); return; L_088A58F4: aot_gpr_31 = (0x088A58FCu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 367u, 0x0898D050u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A58FCu) goto L_088A58FC; AOT_REGCACHE_SYNC_OUT(); return; L_088A58FC: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A59B0; } goto L_088A5904; } L_088A5904: aot_gpr_31 = (0x088A590Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 610u, 0x088A2A24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A590Cu) goto L_088A590C; AOT_REGCACHE_SYNC_OUT(); return; L_088A590C: aot_gpr_4 = (0u | 2u); { const bool branch_taken = ctx.gpr[2] == aot_gpr_4; if (branch_taken) { goto L_088A59B0; } goto L_088A5918; } L_088A5918: aot_gpr_31 = (0x088A5920u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5920u) goto L_088A5920; AOT_REGCACHE_SYNC_OUT(); return; L_088A5920: ctx.gpr[19] = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x088A592Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 574u, 0x088A2820u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A592Cu) goto L_088A592C; AOT_REGCACHE_SYNC_OUT(); return; L_088A592C: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A5938u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 551u, 0x088A2670u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5938u) goto L_088A5938; AOT_REGCACHE_SYNC_OUT(); return; L_088A5938: aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A59B0; } goto L_088A5950; } L_088A5950: aot_gpr_31 = (0x088A5958u); ctx.gpr[19] = (aot_gpr_29 + static_cast(1488)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5958u) goto L_088A5958; AOT_REGCACHE_SYNC_OUT(); return; L_088A5958: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(352))); aot_gpr_31 = (0x088A5964u); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 597u, 0x088A299Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5964u) goto L_088A5964; AOT_REGCACHE_SYNC_OUT(); return; L_088A5964: { 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; } aot_gpr_4 = (48588u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(208))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_gpr_16 | 0u); { 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; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[15]; 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_31 = (0x088A5994u); { const float fs = aot_fpr_12; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 574u, 0x088A2820u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5994u) goto L_088A5994; AOT_REGCACHE_SYNC_OUT(); return; L_088A5994: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (ctx.gpr[2] | 0u); aot_gpr_31 = (0x088A59A4u); 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_0039_entry, 39u, 555u, 0x088A26D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59A4u) goto L_088A59A4; AOT_REGCACHE_SYNC_OUT(); return; L_088A59A4: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A59B0u); aot_gpr_5 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 591u, 0x088A2938u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59B0u) goto L_088A59B0; AOT_REGCACHE_SYNC_OUT(); return; L_088A59B0: aot_gpr_31 = (0x088A59B8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59B8u) goto L_088A59B8; AOT_REGCACHE_SYNC_OUT(); return; L_088A59B8: aot_gpr_4 = (aot_gpr_29 + static_cast(192)); aot_gpr_31 = (0x088A59C4u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59C4u) goto L_088A59C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A59C4: aot_gpr_31 = (0x088A59CCu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 586u, 0x088A28C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59CCu) goto L_088A59CC; AOT_REGCACHE_SYNC_OUT(); return; L_088A59CC: aot_gpr_4 = (0u | 278u); { const bool branch_taken = ctx.gpr[2] == aot_gpr_4; if (branch_taken) { goto L_088A5ACC; } goto L_088A59D8; } L_088A59D8: aot_gpr_31 = (0x088A59E0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A59E0u) goto L_088A59E0; AOT_REGCACHE_SYNC_OUT(); return; L_088A59E0: aot_gpr_4 = (17601u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(0))); aot_gpr_4 = (aot_gpr_4 | 49152u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; aot_gpr_4 = (48163u << 16u); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_20 = std::bit_cast(aot_gpr_4); ctx.gpr[19] = (aot_gpr_29 + static_cast(1504)); ctx.gpr[20] = (aot_gpr_29 + static_cast(192)); { 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 = (ctx.gpr[19] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A5A1Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1504), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 557u, 0x088A2708u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5A1Cu) goto L_088A5A1C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5A1C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(192), std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5A28u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5A28u) goto L_088A5A28; AOT_REGCACHE_SYNC_OUT(); return; L_088A5A28: aot_gpr_4 = (50435u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(0))); aot_gpr_4 = (aot_gpr_4 | 16384u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_gpr_4 = (15395u << 16u); aot_gpr_4 = (aot_gpr_4 | 55050u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_4 = (ctx.gpr[19] | 0u); { const float fs = aot_fpr_12; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_31 = (0x088A5A5Cu); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1504), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 563u, 0x088A274Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5A5Cu) goto L_088A5A5C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5A5C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(192), std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5A68u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5A68u) goto L_088A5A68; AOT_REGCACHE_SYNC_OUT(); return; L_088A5A68: aot_gpr_4 = (17645u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(4))); aot_gpr_4 = (aot_gpr_4 | 32768u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.gpr[20] = (aot_gpr_29 + static_cast(196)); aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); { 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_31 = (0x088A5A94u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1504), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 557u, 0x088A2708u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5A94u) goto L_088A5A94; AOT_REGCACHE_SYNC_OUT(); return; L_088A5A94: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(196), std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5AA0u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5AA0u) goto L_088A5AA0; AOT_REGCACHE_SYNC_OUT(); return; L_088A5AA0: aot_gpr_4 = (50413u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(4))); aot_gpr_4 = (aot_gpr_4 | 32768u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_13 - aot_fpr_12; aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); { const float fs = aot_fpr_12; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_31 = (0x088A5AC8u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1504), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 563u, 0x088A274Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5AC8u) goto L_088A5AC8; AOT_REGCACHE_SYNC_OUT(); return; L_088A5AC8: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(196), std::bit_cast(ctx.fpr[0])); goto L_088A5ACC; L_088A5ACC: aot_gpr_5 = (aot_gpr_29 + static_cast(192)); aot_gpr_31 = (0x088A5AD8u); 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, 538u, 0x08A666C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5AD8u) goto L_088A5AD8; AOT_REGCACHE_SYNC_OUT(); return; L_088A5AD8: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A5B00; } goto L_088A5AE8; } L_088A5AE8: { const bool branch_taken = ctx.gpr[17] != 0u; if (branch_taken) { goto L_088A5B00; } goto L_088A5AF0; } L_088A5AF0: { const bool branch_taken = ctx.gpr[18] != 0u; if (branch_taken) { goto L_088A5B00; } goto L_088A5AF8; } L_088A5AF8: aot_gpr_31 = (0x088A5B00u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 269u, 0x088A9EE0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5B00u) goto L_088A5B00; AOT_REGCACHE_SYNC_OUT(); return; L_088A5B00: aot_gpr_31 = (0x088A5B08u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5B08u) goto L_088A5B08; AOT_REGCACHE_SYNC_OUT(); return; L_088A5B08: aot_gpr_31 = (0x088A5B10u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 570u, 0x088A27D0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5B10u) goto L_088A5B10; AOT_REGCACHE_SYNC_OUT(); return; L_088A5B10: aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5B1Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 586u, 0x088A28C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5B1Cu) goto L_088A5B1C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5B1C: aot_gpr_4 = (0u | 278u); { const bool branch_taken = ctx.gpr[2] != aot_gpr_4; if (branch_taken) { goto L_088A5B40; } goto L_088A5B28; } L_088A5B28: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1088))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(aot_fpr_13)) && aot_fpr_12 == aot_fpr_13)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); goto L_088A5D18; } goto L_088A5B40; L_088A5B40: if (ctx.gpr[18] != 0u) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); goto L_088A5D18; } goto L_088A5B48; L_088A5B48: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(48))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(56))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A5B60u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1536), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 610u, 0x088A2A24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5B60u) goto L_088A5B60; AOT_REGCACHE_SYNC_OUT(); return; L_088A5B60: aot_gpr_4 = (0u | 2u); { const bool branch_taken = ctx.gpr[2] != aot_gpr_4; if (branch_taken) { goto L_088A5C48; } goto L_088A5B6C; } L_088A5B6C: aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5C48; } goto L_088A5B88; } L_088A5B88: aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16256u << 16u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); if (branch_taken) { goto L_088A5BBC; } goto L_088A5BA8; } L_088A5BA8: aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_20 - ctx.fpr[24]; ctx.fpr[24] = aot_fpr_12 / ctx.fpr[24]; goto L_088A5BBC; L_088A5BBC: aot_gpr_31 = (0x088A5BC4u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5BC4u) goto L_088A5BC4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5BC4: aot_gpr_31 = (0x088A5BCCu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 367u, 0x0898D050u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5BCCu) goto L_088A5BCC; AOT_REGCACHE_SYNC_OUT(); return; L_088A5BCC: { const bool branch_taken = ctx.gpr[2] == 0u; aot_gpr_4 = (15800u << 16u); if (branch_taken) { goto L_088A5BF4; } goto L_088A5BD4; } L_088A5BD4: aot_gpr_4 = (15800u << 16u); aot_gpr_4 = (aot_gpr_4 | 20972u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1536))); { const float fs = ctx.fpr[24]; 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_fpr_12 = aot_fpr_13 + aot_fpr_12; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1536), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A5C14; } goto L_088A5BF4; } L_088A5BF4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1104))); aot_gpr_4 = (aot_gpr_4 | 20972u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1536))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = aot_fpr_14 - aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1536), std::bit_cast(aot_fpr_12)); goto L_088A5C14; L_088A5C14: ctx.gpr[7] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25052))); aot_gpr_6 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25056))); aot_gpr_5 = (16253u << 16u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1572), ctx.gpr[7]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1568), aot_gpr_6); aot_gpr_6 = (aot_gpr_5 | 28836u); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_4 = (aot_gpr_29 + static_cast(1536)); aot_gpr_5 = (aot_gpr_29 + static_cast(1568)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1576), std::bit_cast(aot_fpr_12)); aot_gpr_31 = (0x088A5C44u); aot_gpr_6 = (aot_gpr_29 + static_cast(1576)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 677u, 0x088A2EC4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C44u) goto L_088A5C44; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C44: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1536), std::bit_cast(ctx.fpr[0])); goto L_088A5C48; L_088A5C48: aot_gpr_31 = (0x088A5C50u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C50u) goto L_088A5C50; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C50: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_gpr_31 = (0x088A5C5Cu); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 566u, 0x088A2774u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C5Cu) goto L_088A5C5C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C5C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5C6Cu); ctx.fpr[26] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(52))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C6Cu) goto L_088A5C6C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C6C: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A5C78u); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 566u, 0x088A2774u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C78u) goto L_088A5C78; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C78: ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); aot_gpr_31 = (0x088A5C84u); ctx.fpr[28] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1536))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C84u) goto L_088A5C84; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C84: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[28])); aot_gpr_31 = (0x088A5C90u); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 566u, 0x088A2774u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5C90u) goto L_088A5C90; AOT_REGCACHE_SYNC_OUT(); return; L_088A5C90: aot_gpr_4 = (aot_gpr_29 + static_cast(1552)); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_gpr_31 = (0x088A5CA4u); aot_fpr_14 = std::bit_cast(std::bit_cast(ctx.fpr[0])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 568u, 0x088A27ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5CA4u) goto L_088A5CA4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5CA4: ctx.gpr[18] = (aot_gpr_29 + static_cast(1520)); ctx.gpr[19] = (aot_gpr_16 + static_cast(112)); aot_gpr_5 = (aot_gpr_16 + static_cast(112)); aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x088A5CBCu); aot_gpr_6 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 549u, 0x088A2628u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5CBCu) goto L_088A5CBC; AOT_REGCACHE_SYNC_OUT(); return; L_088A5CBC: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A5CC8u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5CC8u) goto L_088A5CC8; AOT_REGCACHE_SYNC_OUT(); return; L_088A5CC8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(112))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1552))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(116))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fpr[15] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1556))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(120))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1560))); { const float fs = aot_fpr_14; const float ft = ctx.fpr[15]; 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_6 = (aot_gpr_16 + static_cast(112)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(112), std::bit_cast(aot_fpr_12)); { const float fs = ctx.fpr[16]; const float ft = ctx.fpr[17]; 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 = (ctx.gpr[18] | 0u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(116), std::bit_cast(aot_fpr_14)); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A5D08u); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(120), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 548u, 0x088A2608u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5D08u) goto L_088A5D08; AOT_REGCACHE_SYNC_OUT(); return; L_088A5D08: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A5D14u); aot_gpr_5 = (ctx.gpr[18] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 571u, 0x088A27ECu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5D14u) goto L_088A5D14; AOT_REGCACHE_SYNC_OUT(); return; L_088A5D14: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); goto L_088A5D18; L_088A5D18: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1168))); aot_gpr_4 = (17948u << 16u); aot_fpr_12 = aot_fpr_12 - aot_fpr_13; aot_gpr_4 = (aot_gpr_4 | 16384u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (ctx.gpr[17] | 0u); { 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_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[17] = (std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A5DC0; } goto L_088A5D40; } L_088A5D40: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A5DC0; } goto L_088A5D50; } L_088A5D50: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(40))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5DC0; } goto L_088A5D68; } L_088A5D68: aot_fpr_12 = std::bit_cast(ctx.gpr[17]); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(24))); aot_gpr_4 = (17224u << 16u); aot_fpr_14 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_14)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5DC0; } goto L_088A5D94; } L_088A5D94: aot_fpr_12 = std::bit_cast(ctx.gpr[17]); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(96))); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(360))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(24))); aot_gpr_6 = (16256u << 16u); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (ctx.gpr[28] + static_cast(7768)); aot_fpr_13 = std::bit_cast(aot_gpr_6); aot_gpr_31 = (0x088A5DC0u); aot_gpr_6 = (0u | 24u); 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 == 0x088A5DC0u) goto L_088A5DC0; AOT_REGCACHE_SYNC_OUT(); return; L_088A5DC0: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A5DE4; } goto L_088A5DCC; } L_088A5DCC: aot_fpr_12 = std::bit_cast(ctx.gpr[17]); aot_gpr_5 = (aot_gpr_29 + static_cast(20)); aot_gpr_6 = (aot_gpr_29 + static_cast(16)); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_gpr_31 = (0x088A5DE4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0193_entry, 193u, 656u, 0x08B0B7F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5DE4u) goto L_088A5DE4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5DE4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1168))); aot_fpr_13 = std::bit_cast(0u); 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); if (branch_taken) { goto L_088A5EA4; } goto L_088A5DFC; } L_088A5DFC: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); aot_fpr_13 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5EA4; } goto L_088A5E14; } L_088A5E14: aot_gpr_31 = (0x088A5E1Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 586u, 0x088A28C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5E1Cu) goto L_088A5E1C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5E1C: aot_gpr_4 = (0u | 278u); { const bool branch_taken = ctx.gpr[2] == aot_gpr_4; if (branch_taken) { goto L_088A5EA4; } goto L_088A5E28; } L_088A5E28: aot_gpr_4 = (16000u << 16u); ctx.fpr[22] = std::bit_cast(0u); ctx.gpr[17] = (aot_gpr_29 + static_cast(1584)); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); aot_gpr_4 = (ctx.gpr[17] | 0u); { const float fs = aot_fpr_20; 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_31 = (0x088A5E4Cu); 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_0039_entry, 39u, 568u, 0x088A27ACu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5E4Cu) goto L_088A5E4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5E4C: ctx.gpr[18] = (aot_gpr_29 + static_cast(1600)); aot_gpr_31 = (0x088A5E58u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5E58u) goto L_088A5E58; AOT_REGCACHE_SYNC_OUT(); return; L_088A5E58: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x088A5E64u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5E64u) goto L_088A5E64; AOT_REGCACHE_SYNC_OUT(); return; L_088A5E64: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(1600), 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 = (aot_gpr_29 + static_cast(1616)); aot_gpr_31 = (0x088A5E7Cu); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0189_entry, 189u, 115u, 0x08AF8668u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5E7Cu) goto L_088A5E7C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5E7C: aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1616))); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[8] = (aot_gpr_29 + static_cast(16)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1608), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (0u | 7u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_6 = (ctx.gpr[17] | 0u); ctx.gpr[7] = (0u | 65u); aot_gpr_31 = (0x088A5EA4u); ctx.gpr[9] = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0079_entry, 79u, 352u, 0x089421CCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5EA4u) goto L_088A5EA4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5EA4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1164))); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1168), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A5F4C; } goto L_088A5EB0; } L_088A5EB0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1061)))))); aot_gpr_4 = (static_cast(aot_gpr_4) < 5 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A5EE4; } goto L_088A5EC0; } L_088A5EC0: aot_fpr_12 = std::bit_cast(0u); aot_gpr_4 = (aot_gpr_16 | 0u); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_gpr_31 = (0x088A5ED4u); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 590u, 0x088A2914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5ED4u) goto L_088A5ED4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5ED4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1061)))))); aot_gpr_4 = (aot_gpr_4 + static_cast(1)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(1061), static_cast(aot_gpr_4)); if (branch_taken) { goto L_088A5F04; } goto L_088A5EE4; } L_088A5EE4: aot_gpr_31 = (0x088A5EECu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 610u, 0x088A2A24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5EECu) goto L_088A5EEC; AOT_REGCACHE_SYNC_OUT(); return; L_088A5EEC: aot_gpr_4 = (0u | 2u); if (ctx.gpr[2] != aot_gpr_4) { aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); goto L_088A5F08; } goto L_088A5EF8; L_088A5EF8: aot_gpr_4 = (49024u << 16u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1064), std::bit_cast(aot_fpr_12)); goto L_088A5F04; L_088A5F04: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); goto L_088A5F08; L_088A5F08: aot_gpr_5 = (0u + static_cast(-2)); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(236))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(1060), static_cast(aot_gpr_4)); aot_gpr_4 = (0u + static_cast(-257)); aot_gpr_4 = (aot_gpr_5 & aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(236), aot_gpr_4); aot_gpr_31 = (0x088A5F2Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 610u, 0x088A2A24u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5F2Cu) goto L_088A5F2C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5F2C: aot_gpr_4 = (0u | 2u); { const bool branch_taken = ctx.gpr[2] != aot_gpr_4; if (branch_taken) { goto L_088A5F4C; } goto L_088A5F38; } L_088A5F38: { const bool branch_taken = ctx.gpr[17] != 0u; if (branch_taken) { goto L_088A5F4C; } goto L_088A5F40; } L_088A5F40: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A5F4Cu); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 41u, 0x088A8374u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5F4Cu) goto L_088A5F4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A5F4C: aot_gpr_31 = (0x088A5F54u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 586u, 0x088A28C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5F54u) goto L_088A5F54; AOT_REGCACHE_SYNC_OUT(); return; L_088A5F54: aot_gpr_4 = (0u | 278u); { const bool branch_taken = ctx.gpr[2] != aot_gpr_4; if (branch_taken) { goto L_088A6050; } goto L_088A5F60; } L_088A5F60: aot_gpr_31 = (0x088A5F68u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5F68u) goto L_088A5F68; AOT_REGCACHE_SYNC_OUT(); return; L_088A5F68: aot_fpr_12 = std::bit_cast(0u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[0] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A6050; } goto L_088A5F7C; } L_088A5F7C: aot_gpr_31 = (0x088A5F84u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 585u, 0x088A28B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5F84u) goto L_088A5F84; AOT_REGCACHE_SYNC_OUT(); return; L_088A5F84: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_088A5FF8; } goto L_088A5F8C; } L_088A5F8C: aot_gpr_4 = (15969u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(948))); aot_gpr_4 = (aot_gpr_4 | 18350u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A5FCC; } goto L_088A5FAC; } L_088A5FAC: aot_gpr_31 = (0x088A5FB4u); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(948))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5FB4u) goto L_088A5FB4; AOT_REGCACHE_SYNC_OUT(); return; L_088A5FB4: aot_gpr_4 = (14979u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = ctx.fpr[0]; 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_fpr_12 = aot_fpr_20 + aot_fpr_12; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(948), std::bit_cast(aot_fpr_12)); goto L_088A5FCC; L_088A5FCC: aot_gpr_6 = (50716u << 16u); aot_gpr_6 = (aot_gpr_6 | 16374u); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 3u); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_gpr_31 = (0x088A5FF0u); ctx.fpr[15] = std::bit_cast(std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0192_entry, 192u, 475u, 0x08B061F8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A5FF0u) goto L_088A5FF0; AOT_REGCACHE_SYNC_OUT(); return; L_088A5FF0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A6080; } goto L_088A5FF8; } L_088A5FF8: aot_gpr_31 = (0x088A6000u); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(948))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6000u) goto L_088A6000; AOT_REGCACHE_SYNC_OUT(); return; L_088A6000: aot_gpr_4 = (14851u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = ctx.fpr[0]; 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; } ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A6044; } goto L_088A6020; } L_088A6020: aot_gpr_31 = (0x088A6028u); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(948))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 584u, 0x088A28B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6028u) goto L_088A6028; AOT_REGCACHE_SYNC_OUT(); return; L_088A6028: aot_gpr_4 = (14851u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = ctx.fpr[0]; 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_fpr_12 = aot_fpr_20 - aot_fpr_12; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(948), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A6080; } goto L_088A6044; } L_088A6044: aot_fpr_12 = std::bit_cast(0u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(948), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A6080; } goto L_088A6050; } L_088A6050: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(1783))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6080; } goto L_088A605C; } L_088A605C: aot_gpr_6 = (50716u << 16u); aot_gpr_6 = (aot_gpr_6 | 16374u); aot_fpr_12 = std::bit_cast(aot_gpr_6); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_5 = (0u | 5u); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_12)); aot_gpr_31 = (0x088A6080u); ctx.fpr[15] = std::bit_cast(std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0192_entry, 192u, 475u, 0x08B061F8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6080u) goto L_088A6080; AOT_REGCACHE_SYNC_OUT(); return; L_088A6080: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(1060)))))); aot_gpr_4 = (aot_gpr_4 & 4u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6138; } goto L_088A6090; } L_088A6090: ctx.gpr[17] = (aot_gpr_29 + static_cast(1632)); aot_gpr_31 = (0x088A609Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 589u, 0x088A290Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A609Cu) goto L_088A609C; AOT_REGCACHE_SYNC_OUT(); return; L_088A609C: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A60A8u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A60A8u) goto L_088A60A8; AOT_REGCACHE_SYNC_OUT(); return; L_088A60A8: aot_fpr_12 = std::bit_cast(0u); aot_gpr_4 = (aot_gpr_16 | 0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1632), std::bit_cast(aot_fpr_12)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(1636), std::bit_cast(aot_fpr_12)); aot_gpr_31 = (0x088A60C0u); aot_gpr_5 = (ctx.gpr[17] | 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 == 0x088A60C0u) goto L_088A60C0; AOT_REGCACHE_SYNC_OUT(); return; L_088A60C0: aot_gpr_4 = (50716u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1068))); aot_gpr_4 = (aot_gpr_4 | 16374u); 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); if (branch_taken) { goto L_088A60F0; } goto L_088A60E0; } L_088A60E0: aot_gpr_31 = (0x088A60E8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 577u, 0x088A2838u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A60E8u) goto L_088A60E8; AOT_REGCACHE_SYNC_OUT(); return; L_088A60E8: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(1068), std::bit_cast(ctx.fpr[0])); if (branch_taken) { goto L_088A6138; } goto L_088A60F0; } L_088A60F0: aot_gpr_31 = (0x088A60F8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 577u, 0x088A2838u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A60F8u) goto L_088A60F8; AOT_REGCACHE_SYNC_OUT(); return; L_088A60F8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1068))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A6108u); aot_fpr_20 = aot_fpr_12 - ctx.fpr[0]; if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 576u, 0x088A2830u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6108u) goto L_088A6108; AOT_REGCACHE_SYNC_OUT(); return; L_088A6108: aot_gpr_4 = (aot_gpr_29 + static_cast(1648)); aot_gpr_31 = (0x088A6114u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 569u, 0x088A27C0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6114u) goto L_088A6114; AOT_REGCACHE_SYNC_OUT(); return; L_088A6114: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A6120u); 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_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6120u) goto L_088A6120; AOT_REGCACHE_SYNC_OUT(); return; L_088A6120: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1648))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1652))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(48), std::bit_cast(aot_fpr_12)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(1656))); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(52), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_16 + static_cast(56), std::bit_cast(aot_fpr_12)); goto L_088A6138; L_088A6138: aot_gpr_31 = (0x088A6140u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0190_entry, 190u, 947u, 0x08AFFEFCu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6140u) goto L_088A6140; AOT_REGCACHE_SYNC_OUT(); return; L_088A6140: { std::uint32_t aot_run_words[14]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(2256), 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]); ctx.fpr[28] = std::bit_cast(aot_run_words[4]); aot_gpr_16 = aot_run_words[5]; ctx.gpr[17] = aot_run_words[6]; ctx.gpr[18] = aot_run_words[7]; ctx.gpr[19] = aot_run_words[8]; ctx.gpr[20] = aot_run_words[9]; ctx.gpr[21] = aot_run_words[10]; ctx.gpr[22] = aot_run_words[11]; ctx.gpr[23] = aot_run_words[12]; aot_gpr_31 = aot_run_words[13]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(2320)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_088A6180: aot_gpr_29 = (aot_gpr_29 + static_cast(-352)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(308), aot_gpr_16); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(312), ctx.gpr[17]); ctx.gpr[17] = (aot_gpr_4 | 0u); aot_gpr_16 = (aot_gpr_5 & 255u); { 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]), std::bit_cast(ctx.fpr[26]), std::bit_cast(ctx.fpr[28]), std::bit_cast(ctx.fpr[30])}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(284), aot_run_words); } { const std::uint32_t aot_run_words[8]{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(316), aot_run_words); } aot_gpr_31 = (0x088A61D4u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A61D4u) goto L_088A61D4; AOT_REGCACHE_SYNC_OUT(); return; L_088A61D4: aot_gpr_31 = (0x088A61DCu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 388u, 0x0898D140u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A61DCu) goto L_088A61DC; AOT_REGCACHE_SYNC_OUT(); return; L_088A61DC: aot_gpr_4 = (15948u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); ctx.fpr[26] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16256u << 16u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (15360u << 16u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); aot_fpr_20 = std::bit_cast(0u); aot_gpr_4 = (49024u << 16u); { const bool branch_taken = ctx.gpr[2] == 0u; ctx.fpr[28] = std::bit_cast(aot_gpr_4); if (branch_taken) { goto L_088A6238; } goto L_088A6208; } L_088A6208: aot_gpr_31 = (0x088A6210u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6210u) goto L_088A6210; AOT_REGCACHE_SYNC_OUT(); return; L_088A6210: aot_gpr_31 = (0x088A6218u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 430u, 0x0898D2D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6218u) goto L_088A6218; AOT_REGCACHE_SYNC_OUT(); return; L_088A6218: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A6238; } goto L_088A6220; } L_088A6220: aot_gpr_31 = (0x088A6228u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6228u) goto L_088A6228; AOT_REGCACHE_SYNC_OUT(); return; L_088A6228: aot_gpr_31 = (0x088A6230u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 367u, 0x0898D050u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6230u) goto L_088A6230; AOT_REGCACHE_SYNC_OUT(); return; L_088A6230: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A6334; } goto L_088A6238; } L_088A6238: aot_gpr_31 = (0x088A6240u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6240u) goto L_088A6240; AOT_REGCACHE_SYNC_OUT(); return; L_088A6240: aot_gpr_31 = (0x088A6248u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 367u, 0x0898D050u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6248u) goto L_088A6248; AOT_REGCACHE_SYNC_OUT(); return; L_088A6248: { const bool branch_taken = ctx.gpr[2] != 0u; if (branch_taken) { goto L_088A62C8; } goto L_088A6250; } L_088A6250: ctx.fpr[30] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1152))); aot_gpr_31 = (0x088A625Cu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A625Cu) goto L_088A625C; AOT_REGCACHE_SYNC_OUT(); return; L_088A625C: aot_gpr_31 = (0x088A6264u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 388u, 0x0898D140u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6264u) goto L_088A6264; AOT_REGCACHE_SYNC_OUT(); return; L_088A6264: aot_fpr_12 = std::bit_cast(ctx.gpr[2]); aot_gpr_4 = (17279u << 16u); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_12 / aot_fpr_13; aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1152))); aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 - aot_fpr_14; aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); { const float fs = aot_fpr_13; const float ft = ctx.fpr[15]; 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 = ctx.fpr[30] + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1152), std::bit_cast(aot_fpr_13)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_12)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1152))); goto L_088A62AC; } goto L_088A62AC; L_088A62AC: aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A62C0; } goto L_088A62C0; L_088A62C0: { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1152), std::bit_cast(aot_fpr_13)); if (branch_taken) { goto L_088A62CC; } goto L_088A62C8; } L_088A62C8: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1152), std::bit_cast(aot_fpr_20)); goto L_088A62CC; L_088A62CC: aot_gpr_4 = (15692u << 16u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1152))); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_13 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_gpr_4 = (48793u << 16u); if (branch_taken) { goto L_088A631C; } goto L_088A62EC; } L_088A62EC: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1152), std::bit_cast(aot_fpr_20)); aot_gpr_31 = (0x088A62F8u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A62F8u) goto L_088A62F8; AOT_REGCACHE_SYNC_OUT(); return; L_088A62F8: aot_gpr_31 = (0x088A6300u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 430u, 0x0898D2D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6300u) goto L_088A6300; AOT_REGCACHE_SYNC_OUT(); return; L_088A6300: aot_fpr_12 = std::bit_cast(ctx.gpr[2]); aot_gpr_4 = (17279u << 16u); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / aot_fpr_13; { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1148), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A633C; } goto L_088A631C; } L_088A631C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1152))); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1148), std::bit_cast(aot_fpr_12)); if (branch_taken) { goto L_088A633C; } goto L_088A6334; } L_088A6334: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1148), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1152), std::bit_cast(aot_fpr_20)); goto L_088A633C; L_088A633C: ctx.fpr[30] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); aot_gpr_31 = (0x088A6348u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6348u) goto L_088A6348; AOT_REGCACHE_SYNC_OUT(); return; L_088A6348: aot_gpr_31 = (0x088A6350u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 1086u, 0x0898F36Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6350u) goto L_088A6350; AOT_REGCACHE_SYNC_OUT(); return; L_088A6350: aot_gpr_4 = (0u - ctx.gpr[2]); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); aot_fpr_13 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); { const float fs = aot_fpr_13; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[28])); aot_fpr_13 = aot_fpr_13 - aot_fpr_14; { const float fs = aot_fpr_13; const float ft = ctx.fpr[26]; 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 = ctx.fpr[30] + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1156), std::bit_cast(aot_fpr_13)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_12)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); goto L_088A6388; } goto L_088A6388; L_088A6388: aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A639C; } goto L_088A639C; L_088A639C: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1156), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(852))); aot_gpr_5 = (0u | 2u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A6488; } goto L_088A63B0; } L_088A63B0: ctx.fpr[30] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1104))); aot_gpr_31 = (0x088A63BCu); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A63BCu) goto L_088A63BC; AOT_REGCACHE_SYNC_OUT(); return; L_088A63BC: aot_gpr_31 = (0x088A63C4u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 52u, 0x0898C1C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A63C4u) goto L_088A63C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A63C4: aot_gpr_4 = (0u - ctx.gpr[2]); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1104))); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[15] = std::bit_cast(0x7FC00000u); else ctx.fpr[15] = fs * ft; } aot_fpr_13 = ctx.fpr[15] - aot_fpr_13; aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[28])); { const float fs = aot_fpr_13; const float ft = ctx.fpr[26]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } { const float fs = aot_fpr_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 = ctx.fpr[30] + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1104), std::bit_cast(aot_fpr_13)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_12)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1104))); goto L_088A6404; } goto L_088A6404; L_088A6404: aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A6418; } goto L_088A6418; L_088A6418: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1104), std::bit_cast(aot_fpr_13)); ctx.fpr[30] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1108))); aot_gpr_31 = (0x088A6428u); aot_gpr_4 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6428u) goto L_088A6428; AOT_REGCACHE_SYNC_OUT(); return; L_088A6428: aot_gpr_31 = (0x088A6430u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 1086u, 0x0898F36Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6430u) goto L_088A6430; AOT_REGCACHE_SYNC_OUT(); return; L_088A6430: aot_gpr_4 = (0u - ctx.gpr[2]); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1108))); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = aot_fpr_12 - aot_fpr_13; ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[28])); { const float fs = aot_fpr_12; const float ft = ctx.fpr[26]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } { 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_fpr_12 = ctx.fpr[30] + aot_fpr_12; aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1108), std::bit_cast(aot_fpr_12)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= ctx.fpr[24])) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { ctx.fpr[24] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1108))); goto L_088A6470; } goto L_088A6470; L_088A6470: aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= ctx.fpr[24])) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[24])); goto L_088A6484; } goto L_088A6484; L_088A6484: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(1108), std::bit_cast(aot_fpr_12)); goto L_088A6488; L_088A6488: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 < aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A64A8; } goto L_088A649C; } L_088A649C: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_12; 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; } if (branch_taken) { goto L_088A64B4; } goto L_088A64A8; } L_088A64A8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1156))); { const float fs = aot_fpr_12; 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_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); goto L_088A64B4; L_088A64B4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(352))); aot_gpr_5 = (16457u << 16u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(104))); aot_gpr_4 = (aot_gpr_5 | 4059u); aot_fpr_14 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (17204u << 16u); { 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; } ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 / ctx.fpr[15]; ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1148))); aot_gpr_4 = (0u | 0u); aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(604), std::bit_cast(ctx.fpr[16])); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_31 = (0x088A64F0u); aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(600), std::bit_cast(aot_fpr_12)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A64F0u) goto L_088A64F0; AOT_REGCACHE_SYNC_OUT(); return; L_088A64F0: aot_gpr_4 = (aot_mem.aot_direct_load16(ctx.gpr[2] + static_cast(154))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A651C; } goto L_088A64FC; } L_088A64FC: aot_gpr_31 = (0x088A6504u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6504u) goto L_088A6504; AOT_REGCACHE_SYNC_OUT(); return; L_088A6504: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[2] + static_cast(156))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A651C; } goto L_088A6510; } L_088A6510: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[17] + static_cast(860))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A65C4; } goto L_088A651C; } L_088A651C: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6540; } goto L_088A6528; } L_088A6528: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(4209))); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A6540; } goto L_088A6534; } L_088A6534: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[17] + static_cast(860))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A65C4; } goto L_088A6540; } L_088A6540: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(608), std::bit_cast(ctx.fpr[22])); aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A6550u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 5u, 0x08B00044u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6550u) goto L_088A6550; AOT_REGCACHE_SYNC_OUT(); return; L_088A6550: aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(604), std::bit_cast(aot_fpr_20)); aot_gpr_5 = (15820u << 16u); aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); aot_gpr_5 = (aot_gpr_5 | 52429u); ctx.fpr[24] = std::bit_cast(aot_gpr_5); { const bool branch_taken = aot_gpr_4 != 0u; aot_gpr_16 = (ctx.gpr[17] + static_cast(320)); if (branch_taken) { goto L_088A657C; } goto L_088A656C; } L_088A656C: aot_gpr_31 = (0x088A6574u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08960424, 87u, 0x08960424u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6574u) goto L_088A6574; AOT_REGCACHE_SYNC_OUT(); return; L_088A6574: aot_gpr_31 = (0x088A657Cu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0082_entry, 82u, 221u, 0x0894CE40u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A657Cu) goto L_088A657C; AOT_REGCACHE_SYNC_OUT(); return; L_088A657C: { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.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_088A65C4; } goto L_088A65A0; } L_088A65A0: aot_fpr_12 = ctx.fpr[24] / aot_fpr_12; aot_gpr_4 = (std::bit_cast(aot_fpr_12)); ctx.set_vfpu_scalar_bits_ct<28u>(aot_gpr_4); { const std::uint32_t vfpu_address = aot_gpr_16 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); aot_gpr_5 = (aot_gpr_29 + static_cast(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_31 = (0x088A65C4u); aot_gpr_4 = (ctx.gpr[17] | 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 == 0x088A65C4u) goto L_088A65C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A65C4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[17] + static_cast(86)))))); aot_gpr_5 = (0u | 219u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A677C; } goto L_088A65D4; } L_088A65D4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 496u); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A677C; } goto L_088A65E4; } L_088A65E4: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), std::bit_cast(ctx.fpr[28])); aot_gpr_4 = (16543u << 16u); aot_gpr_4 = (aot_gpr_4 | 23593u); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(68), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (16314u << 16u); aot_gpr_4 = (aot_gpr_4 | 57672u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (aot_gpr_29 + static_cast(64)); { 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(80)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t aot_run_words[3]{std::bit_cast(ctx.fpr[22]), std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_13)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(64), aot_run_words); } { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_gpr_4 = (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 = 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 = (0x088A6638u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6638u) goto L_088A6638; AOT_REGCACHE_SYNC_OUT(); return; L_088A6638: aot_gpr_31 = (0x088A6640u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 347u, 0x0898CF8Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6640u) goto L_088A6640; AOT_REGCACHE_SYNC_OUT(); return; L_088A6640: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A677C; } goto L_088A6648; } L_088A6648: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(656))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(276), ctx.gpr[17]); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_gpr_4 = (aot_gpr_4 + static_cast(90)); aot_gpr_4 = (aot_gpr_4 < aot_gpr_5 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A677C; } goto L_088A6664; } L_088A6664: ctx.gpr[22] = (aot_gpr_29 + static_cast(112)); aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_5 = (0u | 28u); aot_gpr_31 = (0x088A6678u); aot_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 == 0x088A6678u) goto L_088A6678; AOT_REGCACHE_SYNC_OUT(); return; L_088A6678: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); aot_gpr_4 = (aot_gpr_4 + static_cast(320)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(272), aot_gpr_4); aot_gpr_4 = (15820u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); ctx.gpr[18] = (0u | 0u); aot_gpr_4 = (15564u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_gpr_16 = (aot_gpr_29 + static_cast(208)); ctx.fpr[26] = std::bit_cast(aot_gpr_4); ctx.gpr[21] = (aot_gpr_29 + static_cast(160)); ctx.gpr[20] = (aot_gpr_29 + static_cast(176)); ctx.gpr[19] = (aot_gpr_29 + static_cast(144)); ctx.gpr[30] = (aot_gpr_29 + static_cast(192)); ctx.gpr[23] = (ctx.gpr[28] + static_cast(7768)); ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); goto L_088A66BC; L_088A66BC: { const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(280), ctx.gpr[17]); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_16 + 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[17] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(276))); aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_5 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A66DCu); aot_gpr_6 = (aot_gpr_16 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0039_entry, 39u, 550u, 0x088A2648u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A66DCu) goto L_088A66DC; AOT_REGCACHE_SYNC_OUT(); return; L_088A66DC: 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_mem.aot_direct_load32(aot_gpr_29 + static_cast(272))); { 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 = ctx.gpr[20] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<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 = ctx.gpr[19] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { const std::uint32_t vfpu_address = ctx.gpr[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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_16 + 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[22] | 0u); aot_gpr_5 = (ctx.gpr[17] | 0u); aot_gpr_6 = (aot_gpr_16 | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); aot_gpr_31 = (0x088A672Cu); 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 == 0x088A672Cu) goto L_088A672C; AOT_REGCACHE_SYNC_OUT(); return; L_088A672C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(192), std::bit_cast(aot_fpr_20)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(196), std::bit_cast(ctx.fpr[24])); aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_6 = (ctx.gpr[30] | 0u); aot_gpr_31 = (0x088A6748u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); 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 == 0x088A6748u) goto L_088A6748; AOT_REGCACHE_SYNC_OUT(); return; L_088A6748: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(96))); aot_gpr_4 = (ctx.gpr[23] | 0u); aot_gpr_6 = (0u | 55u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_31 = (0x088A6760u); 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_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 == 0x088A6760u) goto L_088A6760; AOT_REGCACHE_SYNC_OUT(); return; L_088A6760: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7660))); aot_mem.aot_direct_store32(ctx.gpr[17] + static_cast(656), aot_gpr_4); ctx.gpr[18] = (ctx.gpr[18] + static_cast(1)); ctx.gpr[17] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(280))); aot_gpr_4 = (static_cast(ctx.gpr[18]) < 2 ? 1u : 0u); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[17] = (ctx.gpr[17] + static_cast(16)); if (branch_taken) { goto L_088A66BC; } goto L_088A677C; } L_088A677C: { std::uint32_t aot_run_words[16]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(284), 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]); ctx.fpr[28] = std::bit_cast(aot_run_words[4]); ctx.fpr[30] = std::bit_cast(aot_run_words[5]); aot_gpr_16 = aot_run_words[6]; ctx.gpr[17] = aot_run_words[7]; ctx.gpr[18] = aot_run_words[8]; ctx.gpr[19] = aot_run_words[9]; ctx.gpr[20] = aot_run_words[10]; ctx.gpr[21] = aot_run_words[11]; ctx.gpr[22] = aot_run_words[12]; ctx.gpr[23] = aot_run_words[13]; ctx.gpr[30] = aot_run_words[14]; aot_gpr_31 = aot_run_words[15]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(352)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_088A67C4: aot_gpr_29 = (aot_gpr_29 + static_cast(-304)); { const std::uint32_t aot_run_words[14]{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, ctx.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(248), aot_run_words); } aot_gpr_31 = (0x088A6808u); ctx.gpr[22] = (aot_gpr_4 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0190_entry, 190u, 662u, 0x08AFEF74u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6808u) goto L_088A6808; AOT_REGCACHE_SYNC_OUT(); return; L_088A6808: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); ctx.gpr[20] = (0u + static_cast(-2)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), 0u); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(96), 0u); aot_gpr_4 = (aot_gpr_29 + static_cast(96)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(244), aot_gpr_4); aot_gpr_4 = (0u | 278u); { const bool branch_taken = aot_gpr_5 != aot_gpr_4; ctx.gpr[23] = (0u | 249u); if (branch_taken) { goto L_088A6EE4; } goto L_088A6838; } L_088A6838: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(948))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_13 = std::bit_cast(0x7FC00000u); else aot_fpr_13 = fs * ft; } aot_fpr_13 = aot_fpr_14 + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(944), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (16585u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); ctx.fpr[16] = aot_fpr_13 / ctx.fpr[15]; ctx.fpr[16] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[16])); ctx.fpr[16] = static_cast(static_cast(std::bit_cast(ctx.fpr[16]))); { const float fs = ctx.fpr[16]; const float ft = ctx.fpr[15]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_fpr_13 = aot_fpr_13 - aot_fpr_14; aot_gpr_4 = (16256u << 16u); aot_fpr_20 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(944), std::bit_cast(aot_fpr_13)); aot_gpr_4 = (16384u << 16u); ctx.fpr[22] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16073u << 16u); { const float fs = aot_fpr_12; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_gpr_4 | 4059u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 / aot_fpr_13; ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_12 <= aot_fpr_20)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_20)); goto L_088A68A8; } goto L_088A68A8; L_088A68A8: aot_fpr_12 = aot_fpr_20 - aot_fpr_12; aot_gpr_4 = (17279u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_gpr_5 = (0u | 150u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(72))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_gpr_4 & 496u); aot_fpr_12 = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(aot_fpr_12)); ctx.gpr[30] = (std::bit_cast(aot_fpr_12)); aot_gpr_5 = (aot_gpr_5 - ctx.gpr[30]); { const bool branch_taken = aot_gpr_4 == 0u; aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(240), aot_gpr_5); if (branch_taken) { goto L_088A68EC; } goto L_088A68D8; } L_088A68D8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(72))); aot_gpr_5 = (0u | 192u); aot_gpr_4 = (aot_gpr_4 & 496u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A6C20; } goto L_088A68EC; } L_088A68EC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(968))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A69C4; } goto L_088A68F8; } L_088A68F8: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); 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(0x3F22F983u); 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_vec3_ct<64u, 0u, 32u, 1u, 2u>(); ctx.execute_vfpu_unary_ct<1u, 64u, 1u, 18u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<1u>()); ctx.fpr[24] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (16068u << 16u); aot_gpr_4 = (aot_gpr_4 | 38922u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = ctx.fpr[24]; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(968))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A6954; } goto L_088A693C; } L_088A693C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6958; } goto L_088A694C; } L_088A694C: aot_gpr_31 = (0x088A6954u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6954u) goto L_088A6954; AOT_REGCACHE_SYNC_OUT(); return; L_088A6954: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6958; L_088A6958: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6970u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6970u) goto L_088A6970; AOT_REGCACHE_SYNC_OUT(); return; L_088A6970: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_fpr_14 = std::bit_cast(std::bit_cast(aot_fpr_14) ^ 0x80000000u); ctx.fpr[26] = std::bit_cast(0u); aot_gpr_4 = (aot_gpr_29 | 0u); aot_fpr_12 = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_gpr_31 = (0x088A6994u); aot_fpr_13 = std::bit_cast(std::bit_cast(ctx.fpr[26])); 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 == 0x088A6994u) goto L_088A6994; AOT_REGCACHE_SYNC_OUT(); return; L_088A6994: aot_gpr_4 = (aot_gpr_29 | 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_gpr_31 = (0x088A69A8u); aot_fpr_14 = std::bit_cast(std::bit_cast(ctx.fpr[26])); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0023_entry, 23u, 5u, 0x088600C4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A69A8u) goto L_088A69A8; AOT_REGCACHE_SYNC_OUT(); return; L_088A69A8: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A69BCu); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A69BCu) goto L_088A69BC; AOT_REGCACHE_SYNC_OUT(); return; L_088A69BC: aot_gpr_31 = (0x088A69C4u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A69C4u) goto L_088A69C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A69C4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(972))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6A4C; } goto L_088A69D0; } L_088A69D0: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(972))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A69FC; } goto L_088A69E4; } L_088A69E4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6A00; } goto L_088A69F4; } L_088A69F4: aot_gpr_31 = (0x088A69FCu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A69FCu) goto L_088A69FC; AOT_REGCACHE_SYNC_OUT(); return; L_088A69FC: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6A00; L_088A6A00: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6A18u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6A18u) goto L_088A6A18; AOT_REGCACHE_SYNC_OUT(); return; L_088A6A18: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_gpr_31 = (0x088A6A30u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 917u, 0x0885F9B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6A30u) goto L_088A6A30; AOT_REGCACHE_SYNC_OUT(); return; L_088A6A30: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6A44u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6A44u) goto L_088A6A44; AOT_REGCACHE_SYNC_OUT(); return; L_088A6A44: aot_gpr_31 = (0x088A6A4Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6A4Cu) goto L_088A6A4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6A4C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(976))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6AD0; } goto L_088A6A58; } L_088A6A58: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(976))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A6A84; } goto L_088A6A6C; } L_088A6A6C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6A88; } goto L_088A6A7C; } L_088A6A7C: aot_gpr_31 = (0x088A6A84u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6A84u) goto L_088A6A84; AOT_REGCACHE_SYNC_OUT(); return; L_088A6A84: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6A88; L_088A6A88: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6AA0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6AA0u) goto L_088A6AA0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6AA0: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_gpr_31 = (0x088A6AB4u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 917u, 0x0885F9B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6AB4u) goto L_088A6AB4; AOT_REGCACHE_SYNC_OUT(); return; L_088A6AB4: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6AC8u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6AC8u) goto L_088A6AC8; AOT_REGCACHE_SYNC_OUT(); return; L_088A6AC8: aot_gpr_31 = (0x088A6AD0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6AD0u) goto L_088A6AD0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6AD0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(980))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6B78; } goto L_088A6ADC; } L_088A6ADC: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(980))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A6B08; } goto L_088A6AF0; } L_088A6AF0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6B0C; } goto L_088A6B00; } L_088A6B00: aot_gpr_31 = (0x088A6B08u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B08u) goto L_088A6B08; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B08: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6B0C; L_088A6B0C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6B24u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B24u) goto L_088A6B24; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B24: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_31 = (0x088A6B34u); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B34u) goto L_088A6B34; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B34: aot_gpr_31 = (0x088A6B3Cu); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 52u, 0x0898C1C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B3Cu) goto L_088A6B3C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B3C: aot_gpr_4 = (0u - ctx.gpr[2]); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_gpr_4 = (15360u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_31 = (0x088A6B5Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 917u, 0x0885F9B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B5Cu) goto L_088A6B5C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B5C: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6B70u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6B70u) goto L_088A6B70; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B70: aot_gpr_31 = (0x088A6B78u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6B78u) goto L_088A6B78; AOT_REGCACHE_SYNC_OUT(); return; L_088A6B78: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(984))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6C20; } goto L_088A6B84; } L_088A6B84: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(984))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A6BB0; } goto L_088A6B98; } L_088A6B98: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6BB4; } goto L_088A6BA8; } L_088A6BA8: aot_gpr_31 = (0x088A6BB0u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6BB0u) goto L_088A6BB0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6BB0: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6BB4; L_088A6BB4: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6BCCu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6BCCu) goto L_088A6BCC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6BCC: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_31 = (0x088A6BDCu); aot_gpr_4 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_0898B428, 97u, 0x0898B428u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6BDCu) goto L_088A6BDC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6BDC: aot_gpr_31 = (0x088A6BE4u); aot_gpr_4 = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0098_entry, 98u, 52u, 0x0898C1C8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6BE4u) goto L_088A6BE4; AOT_REGCACHE_SYNC_OUT(); return; L_088A6BE4: aot_gpr_4 = (0u - ctx.gpr[2]); aot_fpr_12 = std::bit_cast(aot_gpr_4); aot_fpr_12 = static_cast(static_cast(std::bit_cast(aot_fpr_12))); aot_gpr_4 = (15360u << 16u); aot_fpr_13 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_31 = (0x088A6C04u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 917u, 0x0885F9B0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6C04u) goto L_088A6C04; AOT_REGCACHE_SYNC_OUT(); return; L_088A6C04: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6C18u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6C18u) goto L_088A6C18; AOT_REGCACHE_SYNC_OUT(); return; L_088A6C18: aot_gpr_31 = (0x088A6C20u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6C20u) goto L_088A6C20; AOT_REGCACHE_SYNC_OUT(); return; L_088A6C20: ctx.gpr[19] = (2179u << 16u); aot_gpr_4 = (49024u << 16u); ctx.gpr[18] = (0u | 9u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); ctx.gpr[21] = (0u | 10u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(108), 0u); ctx.gpr[20] = (aot_gpr_29 + static_cast(108)); ctx.gpr[23] = (0u | 12u); ctx.gpr[19] = (ctx.gpr[19] + static_cast(992)); goto L_088A6C44; L_088A6C44: aot_gpr_16 = (ctx.gpr[18] << 2u); aot_gpr_16 = (ctx.gpr[22] + aot_gpr_16); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(956))); ctx.gpr[17] = (ctx.gpr[21] << 2u); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (ctx.gpr[22] + ctx.gpr[17]); if (branch_taken) { goto L_088A6CA8; } goto L_088A6C5C; } L_088A6C5C: { const float fs = aot_fpr_20; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(956))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_gpr_5 = (0u | 1u); aot_gpr_6 = (0u | 1u); aot_gpr_31 = (0x088A6C78u); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0190_entry, 190u, 821u, 0x08AFF730u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6C78u) goto L_088A6C78; AOT_REGCACHE_SYNC_OUT(); return; L_088A6C78: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(956))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(108), 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A6C8Cu); aot_gpr_6 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0091_entry, 91u, 626u, 0x08972E68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6C8Cu) goto L_088A6C8C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6C8C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(108))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6CA8; } goto L_088A6C98; } L_088A6C98: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(108))); aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A6CA8u); aot_gpr_6 = (ctx.gpr[30] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 502u, 0x08B01DD0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6CA8u) goto L_088A6CA8; AOT_REGCACHE_SYNC_OUT(); return; L_088A6CA8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(956))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6D14; } goto L_088A6CB4; } L_088A6CB4: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(956))); { 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_gpr_5 = (0u | 1u); aot_gpr_6 = (0u | 1u); aot_gpr_31 = (0x088A6CD0u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0190_entry, 190u, 821u, 0x08AFF730u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6CD0u) goto L_088A6CD0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6CD0: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(956))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(108), 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A6CE4u); aot_gpr_6 = (ctx.gpr[20] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0091_entry, 91u, 626u, 0x08972E68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6CE4u) goto L_088A6CE4; AOT_REGCACHE_SYNC_OUT(); return; L_088A6CE4: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(108))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6D14; } goto L_088A6CF0; } L_088A6CF0: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(108))); aot_gpr_6 = (static_cast(aot_gpr_5) < 0 ? 1u : 0u); if (aot_gpr_6 != 0u) { aot_gpr_5 = (0u | 0u); goto L_088A6D04; } goto L_088A6D04; L_088A6D04: aot_gpr_6 = (aot_gpr_5 | 0u); aot_gpr_5 = (aot_gpr_4 | 0u); aot_gpr_31 = (0x088A6D14u); aot_gpr_4 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 502u, 0x08B01DD0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6D14u) goto L_088A6D14; AOT_REGCACHE_SYNC_OUT(); return; L_088A6D14: { const bool branch_taken = ctx.gpr[18] != ctx.gpr[23]; if (branch_taken) { goto L_088A6D2C; } goto L_088A6D1C; } L_088A6D1C: ctx.gpr[18] = (0u | 14u); aot_fpr_20 = std::bit_cast(std::bit_cast(ctx.fpr[24])); { const bool branch_taken = 0u == 0u; ctx.gpr[21] = (0u | 15u); if (branch_taken) { goto L_088A6D30; } goto L_088A6D2C; } L_088A6D2C: ctx.gpr[18] = (0u | 0u); goto L_088A6D30; L_088A6D30: { const bool branch_taken = ctx.gpr[18] != 0u; if (branch_taken) { goto L_088A6C44; } goto L_088A6D38; } L_088A6D38: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); ctx.gpr[20] = (0u + static_cast(-2)); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(244))); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[23] = (0u | 249u); if (branch_taken) { goto L_088A6DFC; } goto L_088A6D4C; } L_088A6D4C: ctx.gpr[17] = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_gpr_16 = (2186u << 16u); ctx.gpr[19] = (aot_gpr_29 + static_cast(48)); ctx.gpr[18] = (aot_gpr_29 + static_cast(80)); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_16 = (aot_gpr_16 + static_cast(10032)); if (branch_taken) { goto L_088A6D80; } goto L_088A6D68; } L_088A6D68: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[17] + static_cast(16)); if (branch_taken) { goto L_088A6D84; } goto L_088A6D78; } L_088A6D78: aot_gpr_31 = (0x088A6D80u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6D80u) goto L_088A6D80; AOT_REGCACHE_SYNC_OUT(); return; L_088A6D80: aot_gpr_4 = (ctx.gpr[17] + static_cast(16)); goto L_088A6D84; L_088A6D84: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6D9Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6D9Cu) goto L_088A6D9C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6D9C: { 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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_gpr_31 = (0x088A6DB0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 919u, 0x0885F9D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6DB0u) goto L_088A6DB0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6DB0: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6DC4u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6DC4u) goto L_088A6DC4; AOT_REGCACHE_SYNC_OUT(); return; L_088A6DC4: aot_gpr_31 = (0x088A6DCCu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6DCCu) goto L_088A6DCC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6DCC: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(96), 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A6DE0u); aot_gpr_6 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0091_entry, 91u, 626u, 0x08972E68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6DE0u) goto L_088A6DE0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6DE0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6DFC; } goto L_088A6DEC; } L_088A6DEC: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A6DFCu); aot_gpr_6 = (ctx.gpr[30] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 502u, 0x08B01DD0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6DFCu) goto L_088A6DFC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6DFC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(964))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6ED0; } goto L_088A6E08; } L_088A6E08: ctx.gpr[17] = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(964))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_gpr_16 = (2186u << 16u); ctx.gpr[19] = (aot_gpr_29 + static_cast(48)); ctx.gpr[18] = (aot_gpr_29 + static_cast(80)); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_16 = (aot_gpr_16 + static_cast(10032)); if (branch_taken) { goto L_088A6E3C; } goto L_088A6E24; } L_088A6E24: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[17] + static_cast(16)); if (branch_taken) { goto L_088A6E40; } goto L_088A6E34; } L_088A6E34: aot_gpr_31 = (0x088A6E3Cu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6E3Cu) goto L_088A6E3C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6E3C: aot_gpr_4 = (ctx.gpr[17] + static_cast(16)); goto L_088A6E40; L_088A6E40: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6E58u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6E58u) goto L_088A6E58; AOT_REGCACHE_SYNC_OUT(); return; L_088A6E58: { 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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_gpr_31 = (0x088A6E70u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 919u, 0x0885F9D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6E70u) goto L_088A6E70; AOT_REGCACHE_SYNC_OUT(); return; L_088A6E70: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6E84u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6E84u) goto L_088A6E84; AOT_REGCACHE_SYNC_OUT(); return; L_088A6E84: aot_gpr_31 = (0x088A6E8Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6E8Cu) goto L_088A6E8C; AOT_REGCACHE_SYNC_OUT(); return; L_088A6E8C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(96), 0u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(964))); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A6EA0u); aot_gpr_6 = (ctx.gpr[21] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0091_entry, 91u, 626u, 0x08972E68u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6EA0u) goto L_088A6EA0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6EA0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6ED0; } goto L_088A6EAC; } L_088A6EAC: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(240))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(96))); aot_gpr_6 = (static_cast(aot_gpr_5) < 0 ? 1u : 0u); if (aot_gpr_6 != 0u) { aot_gpr_5 = (0u | 0u); goto L_088A6EC0; } goto L_088A6EC0; L_088A6EC0: aot_gpr_6 = (aot_gpr_5 | 0u); aot_gpr_5 = (aot_gpr_4 | 0u); aot_gpr_31 = (0x088A6ED0u); aot_gpr_4 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0191_entry, 191u, 502u, 0x08B01DD0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6ED0u) goto L_088A6ED0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6ED0: aot_gpr_4 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A6EDCu); aot_gpr_5 = (0u | 3u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0164_entry, 164u, 527u, 0x08A979D4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6EDCu) goto L_088A6EDC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6EDC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A70D8; } goto L_088A6EE4; } L_088A6EE4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u + static_cast(-997)); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_088A6F40; } goto L_088A6EF4; } L_088A6EF4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 277u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_088A6F40; } goto L_088A6F04; } L_088A6F04: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); { const bool branch_taken = aot_gpr_4 == ctx.gpr[23]; if (branch_taken) { goto L_088A6F40; } goto L_088A6F10; } L_088A6F10: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 257u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_088A6F40; } goto L_088A6F20; } L_088A6F20: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 225u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_088A6F40; } goto L_088A6F30; } L_088A6F30: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 248u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A70D8; } goto L_088A6F40; } L_088A6F40: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(968))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A6FC8; } goto L_088A6F4C; } L_088A6F4C: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(968))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A6F78; } goto L_088A6F60; } L_088A6F60: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A6F7C; } goto L_088A6F70; } L_088A6F70: aot_gpr_31 = (0x088A6F78u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6F78u) goto L_088A6F78; AOT_REGCACHE_SYNC_OUT(); return; L_088A6F78: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A6F7C; L_088A6F7C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A6F94u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6F94u) goto L_088A6F94; AOT_REGCACHE_SYNC_OUT(); return; L_088A6F94: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_gpr_31 = (0x088A6FACu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 921u, 0x0885FA00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6FACu) goto L_088A6FAC; AOT_REGCACHE_SYNC_OUT(); return; L_088A6FAC: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A6FC0u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A6FC0u) goto L_088A6FC0; AOT_REGCACHE_SYNC_OUT(); return; L_088A6FC0: aot_gpr_31 = (0x088A6FC8u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A6FC8u) goto L_088A6FC8; AOT_REGCACHE_SYNC_OUT(); return; L_088A6FC8: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(980))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A7050; } goto L_088A6FD4; } L_088A6FD4: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(980))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A7000; } goto L_088A6FE8; } L_088A6FE8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A7004; } goto L_088A6FF8; } L_088A6FF8: aot_gpr_31 = (0x088A7000u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7000u) goto L_088A7000; AOT_REGCACHE_SYNC_OUT(); return; L_088A7000: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A7004; L_088A7004: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A701Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A701Cu) goto L_088A701C; AOT_REGCACHE_SYNC_OUT(); return; L_088A701C: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_gpr_31 = (0x088A7034u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 921u, 0x0885FA00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7034u) goto L_088A7034; AOT_REGCACHE_SYNC_OUT(); return; L_088A7034: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A7048u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A7048u) goto L_088A7048; AOT_REGCACHE_SYNC_OUT(); return; L_088A7048: aot_gpr_31 = (0x088A7050u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7050u) goto L_088A7050; AOT_REGCACHE_SYNC_OUT(); return; L_088A7050: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(984))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A70D8; } goto L_088A705C; } L_088A705C: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(984))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A7088; } goto L_088A7070; } L_088A7070: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A708C; } goto L_088A7080; } L_088A7080: aot_gpr_31 = (0x088A7088u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7088u) goto L_088A7088; AOT_REGCACHE_SYNC_OUT(); return; L_088A7088: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A708C; L_088A708C: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A70A4u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A70A4u) goto L_088A70A4; AOT_REGCACHE_SYNC_OUT(); return; L_088A70A4: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(600))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); aot_gpr_31 = (0x088A70BCu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 921u, 0x0885FA00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A70BCu) goto L_088A70BC; AOT_REGCACHE_SYNC_OUT(); return; L_088A70BC: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A70D0u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A70D0u) goto L_088A70D0; AOT_REGCACHE_SYNC_OUT(); return; L_088A70D0: aot_gpr_31 = (0x088A70D8u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A70D8u) goto L_088A70D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A70D8: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); { const bool branch_taken = aot_gpr_4 == ctx.gpr[23]; if (branch_taken) { goto L_088A70F4; } goto L_088A70E4; } L_088A70E4: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 248u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A71B0; } goto L_088A70F4; } L_088A70F4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(972))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A71B0; } goto L_088A7100; } L_088A7100: aot_fpr_12 = std::bit_cast(0u); aot_gpr_4 = (ctx.gpr[22] + static_cast(1008)); { const std::uint32_t aot_run_words[3]{std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_12), std::bit_cast(aot_fpr_12)}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(128), aot_run_words); } aot_gpr_31 = (0x088A711Cu); aot_gpr_5 = (ctx.gpr[22] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0127_entry, 127u, 29u, 0x08A0019Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A711Cu) goto L_088A711C; AOT_REGCACHE_SYNC_OUT(); return; L_088A711C: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[22] + static_cast(1049))); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(1008))); aot_gpr_4 = (aot_gpr_4 << 2u); aot_gpr_4 = (aot_gpr_29 + aot_gpr_4); aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(972))); aot_mem.aot_direct_store32(aot_gpr_4 + static_cast(128), std::bit_cast(aot_fpr_12)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A715C; } goto L_088A7144; } L_088A7144: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A7160; } goto L_088A7154; } L_088A7154: aot_gpr_31 = (0x088A715Cu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A715Cu) goto L_088A715C; AOT_REGCACHE_SYNC_OUT(); return; L_088A715C: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A7160; L_088A7160: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A7178u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7178u) goto L_088A7178; AOT_REGCACHE_SYNC_OUT(); return; L_088A7178: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(128), 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 = (0x088A7194u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A7194u) goto L_088A7194; AOT_REGCACHE_SYNC_OUT(); return; L_088A7194: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A71A8u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A71A8u) goto L_088A71A8; AOT_REGCACHE_SYNC_OUT(); return; L_088A71A8: aot_gpr_31 = (0x088A71B0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A71B0u) goto L_088A71B0; AOT_REGCACHE_SYNC_OUT(); return; L_088A71B0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); { const bool branch_taken = aot_gpr_4 != ctx.gpr[23]; if (branch_taken) { goto L_088A7544; } goto L_088A71BC; } L_088A71BC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(976))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A741C; } goto L_088A71C8; } L_088A71C8: aot_gpr_5 = (48969u << 16u); aot_fpr_20 = std::bit_cast(0u); aot_gpr_5 = (aot_gpr_5 | 4059u); ctx.fpr[24] = std::bit_cast(aot_gpr_5); aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(976))); aot_gpr_5 = (16268u << 16u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_gpr_5 = (aot_gpr_5 | 48716u); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); ctx.fpr[26] = std::bit_cast(aot_gpr_5); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A7210; } goto L_088A71F8; } L_088A71F8: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A7214; } goto L_088A7208; } L_088A7208: aot_gpr_31 = (0x088A7210u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7210u) goto L_088A7210; AOT_REGCACHE_SYNC_OUT(); return; L_088A7210: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A7214; L_088A7214: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A722Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A722Cu) goto L_088A722C; AOT_REGCACHE_SYNC_OUT(); return; L_088A722C: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } ctx.fpr[22] = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(16))); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(ctx.fpr[22]) || std::isnan(aot_fpr_20)) && ctx.fpr[22] == aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(20))); if (branch_taken) { goto L_088A7264; } goto L_088A724C; } L_088A724C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(aot_fpr_20)) && aot_fpr_12 == aot_fpr_20)) ? 0x00800000u : 0u); if (!((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A7268; } goto L_088A725C; L_088A725C: { const bool branch_taken = 0u == 0u; ctx.fpr[22] = std::bit_cast(std::bit_cast(aot_fpr_20)); if (branch_taken) { goto L_088A7274; } goto L_088A7264; } L_088A7264: aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A7268; L_088A7268: aot_gpr_31 = (0x088A7270u); aot_fpr_12 = 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_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 == 0x088A7270u) goto L_088A7270; AOT_REGCACHE_SYNC_OUT(); return; L_088A7270: ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_088A7274; L_088A7274: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(16))); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_12) ^ 0x80000000u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_12) || std::isnan(aot_fpr_20)) && aot_fpr_12 == aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(20))); if (branch_taken) { goto L_088A72A8; } goto L_088A728C; } L_088A728C: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((!(std::isnan(aot_fpr_13) || std::isnan(aot_fpr_20)) && aot_fpr_13 == aot_fpr_20)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A72A8; } goto L_088A729C; } L_088A729C: aot_fpr_20 = ctx.fpr[22] + aot_fpr_20; { const bool branch_taken = 0u == 0u; aot_fpr_20 = ctx.fpr[24] - aot_fpr_20; if (branch_taken) { goto L_088A72B8; } goto L_088A72A8; } L_088A72A8: aot_gpr_31 = (0x088A72B0u); 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 == 0x088A72B0u) goto L_088A72B0; AOT_REGCACHE_SYNC_OUT(); return; L_088A72B0: aot_fpr_20 = ctx.fpr[22] + ctx.fpr[0]; aot_fpr_20 = ctx.fpr[24] - aot_fpr_20; goto L_088A72B8; L_088A72B8: ctx.fpr[24] = std::bit_cast(std::bit_cast(aot_fpr_20)); aot_gpr_31 = (0x088A72C4u); 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_0162_entry, 162u, 580u, 0x08A8F0B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A72C4u) goto L_088A72C4; AOT_REGCACHE_SYNC_OUT(); return; L_088A72C4: aot_gpr_4 = (16329u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A72F4; } goto L_088A72E0; } L_088A72E0: aot_gpr_4 = (16457u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); { const bool branch_taken = 0u == 0u; ctx.fpr[24] = ctx.fpr[24] - aot_fpr_20; if (branch_taken) { goto L_088A7320; } goto L_088A72F4; } L_088A72F4: aot_gpr_4 = (49097u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_20 < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A7320; } goto L_088A7310; } L_088A7310: aot_gpr_4 = (49225u << 16u); aot_gpr_4 = (aot_gpr_4 | 4059u); ctx.fpr[24] = std::bit_cast(aot_gpr_4); ctx.fpr[24] = ctx.fpr[24] - aot_fpr_20; goto L_088A7320; L_088A7320: ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] <= ctx.fpr[26])) ? 0x00800000u : 0u); { const bool branch_taken = ((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A7338; } goto L_088A7330; } L_088A7330: { const bool branch_taken = 0u == 0u; ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[26])); if (branch_taken) { goto L_088A7358; } goto L_088A7338; } L_088A7338: aot_gpr_4 = (49036u << 16u); aot_gpr_4 = (aot_gpr_4 | 48716u); aot_fpr_12 = std::bit_cast(aot_gpr_4); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((ctx.fpr[24] < aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A7358; } goto L_088A7354; } L_088A7354: ctx.fpr[24] = std::bit_cast(std::bit_cast(aot_fpr_12)); goto L_088A7358; L_088A7358: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(948))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(8348))); aot_gpr_4 = (15363u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); aot_fpr_14 = std::bit_cast(aot_gpr_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_gpr_4 = (15107u << 16u); aot_gpr_4 = (aot_gpr_4 | 4719u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_13 = aot_fpr_13 + ctx.fpr[15]; { const float fs = ctx.fpr[24]; const float ft = aot_fpr_13; 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_12 = aot_fpr_12 + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(948), std::bit_cast(aot_fpr_12)); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_4 = (16255u << 16u); aot_gpr_4 = (aot_gpr_4 | 40370u); ctx.fpr[16] = std::bit_cast(aot_gpr_4); aot_gpr_4 = (std::bit_cast(ctx.fpr[16])); aot_gpr_5 = (std::bit_cast(aot_fpr_14)); ctx.set_vfpu_scalar_bits_ct<0u>(aot_gpr_4); ctx.set_vfpu_scalar_bits_ct<32u>(aot_gpr_5); ctx.execute_vfpu_unary_ct<64u, 0u, 1u, 21u>(); ctx.execute_vfpu_vec3_ct<0u, 32u, 64u, 1u, 2u>(); ctx.execute_vfpu_unary_ct<32u, 0u, 1u, 20u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<32u>()); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_gpr_4 = (17402u << 16u); 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_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } { const float fs = aot_fpr_14; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_14 = std::bit_cast(0x7FC00000u); else aot_fpr_14 = fs * ft; } aot_gpr_4 = (16256u << 16u); ctx.fpr[15] = std::bit_cast(aot_gpr_4); aot_fpr_14 = aot_fpr_14 + ctx.fpr[15]; aot_fpr_14 = ctx.fpr[15] / aot_fpr_14; { 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; } { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(948), std::bit_cast(aot_fpr_12)); ctx.fpr[16] = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { const float fs = aot_fpr_12; const float ft = ctx.fpr[16]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = ctx.fpr[22] + aot_fpr_12; aot_gpr_31 = (0x088A7400u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 921u, 0x0885FA00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7400u) goto L_088A7400; AOT_REGCACHE_SYNC_OUT(); return; L_088A7400: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A7414u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A7414u) goto L_088A7414; AOT_REGCACHE_SYNC_OUT(); return; L_088A7414: aot_gpr_31 = (0x088A741Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A741Cu) goto L_088A741C; AOT_REGCACHE_SYNC_OUT(); return; L_088A741C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A765C; } goto L_088A7428; } L_088A7428: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A7454; } goto L_088A743C; } L_088A743C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A7458; } goto L_088A744C; } L_088A744C: aot_gpr_31 = (0x088A7454u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7454u) goto L_088A7454; AOT_REGCACHE_SYNC_OUT(); return; L_088A7454: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A7458; L_088A7458: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A7470u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7470u) goto L_088A7470; AOT_REGCACHE_SYNC_OUT(); return; L_088A7470: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_gpr_31 = (0x088A7484u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 919u, 0x0885F9D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7484u) goto L_088A7484; AOT_REGCACHE_SYNC_OUT(); return; L_088A7484: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A7498u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A7498u) goto L_088A7498; AOT_REGCACHE_SYNC_OUT(); return; L_088A7498: aot_gpr_31 = (0x088A74A0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A74A0u) goto L_088A74A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A74A0: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(8348))); aot_gpr_4 = (15897u << 16u); aot_gpr_4 = (aot_gpr_4 | 39322u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_12 = aot_fpr_12 + aot_fpr_13; aot_gpr_4 = (16076u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); 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 = (16180u << 16u); aot_gpr_4 = (aot_gpr_4 | 65012u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(160), std::bit_cast(aot_fpr_13)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(164), std::bit_cast(aot_fpr_13)); aot_fpr_13 = std::bit_cast(0u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(168), std::bit_cast(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_29 + static_cast(160)); { 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(144)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_gpr_5 = (ctx.gpr[22] + static_cast(320)); { const std::uint32_t vfpu_address = aot_gpr_5 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { 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>(); aot_gpr_4 = (aot_gpr_29 + static_cast(176)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); { const std::uint32_t vfpu_address = aot_gpr_4 + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.execute_vfpu_unary_ct<28u, 28u, 1u, 22u>(); aot_gpr_4 = (ctx.vfpu_scalar_bits_ct<28u>()); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); { 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_12 = aot_fpr_12 + aot_fpr_13; aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(944), std::bit_cast(aot_fpr_12)); { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A765C; } goto L_088A7544; } L_088A7544: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 219u); { const bool branch_taken = aot_gpr_4 == aot_gpr_5; if (branch_taken) { goto L_088A7564; } goto L_088A7554; } L_088A7554: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load16(ctx.gpr[22] + static_cast(86)))))); aot_gpr_5 = (0u | 214u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A765C; } goto L_088A7564; } L_088A7564: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (15523u << 16u); if (branch_taken) { goto L_088A7640; } goto L_088A7570; } L_088A7570: aot_gpr_16 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); ctx.gpr[18] = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A759C; } goto L_088A7584; } L_088A7584: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (aot_gpr_16 + static_cast(16)); if (branch_taken) { goto L_088A75A0; } goto L_088A7594; } L_088A7594: aot_gpr_31 = (0x088A759Cu); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A759Cu) goto L_088A759C; AOT_REGCACHE_SYNC_OUT(); return; L_088A759C: aot_gpr_4 = (aot_gpr_16 + static_cast(16)); goto L_088A75A0; L_088A75A0: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A75B8u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A75B8u) goto L_088A75B8; AOT_REGCACHE_SYNC_OUT(); return; L_088A75B8: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); std::uint32_t vfpu_words[4]{}; aot_mem.aot_direct_load32_block(vfpu_address, vfpu_words); float vfpu_value[4]{ std::bit_cast(vfpu_words[0]), std::bit_cast(vfpu_words[1]), std::bit_cast(vfpu_words[2]), std::bit_cast(vfpu_words[3])}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); aot_gpr_31 = (0x088A75CCu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 921u, 0x0885FA00u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A75CCu) goto L_088A75CC; AOT_REGCACHE_SYNC_OUT(); return; L_088A75CC: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A75E0u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A75E0u) goto L_088A75E0; AOT_REGCACHE_SYNC_OUT(); return; L_088A75E0: aot_gpr_31 = (0x088A75E8u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A75E8u) goto L_088A75E8; AOT_REGCACHE_SYNC_OUT(); return; L_088A75E8: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(1776))); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (15523u << 16u); if (branch_taken) { goto L_088A7640; } goto L_088A75F4; } L_088A75F4: aot_gpr_31 = (0x088A75FCu); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0038_entry, 38u, 598u, 0x0889E930u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A75FCu) goto L_088A75FC; AOT_REGCACHE_SYNC_OUT(); return; L_088A75FC: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(36))); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_088A7634; } goto L_088A760C; } L_088A760C: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(36))); aot_gpr_6 = (43691u << 16u); aot_gpr_6 = (aot_gpr_6 + static_cast(-21846)); { const bool branch_taken = aot_gpr_5 == aot_gpr_6; if (branch_taken) { goto L_088A7634; } goto L_088A7620; } L_088A7620: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(36))); jump_target = aot_gpr_5; aot_gpr_31 = (0x088A762Cu); 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 == 0x088A762Cu) goto L_088A762C; AOT_REGCACHE_SYNC_OUT(); return; L_088A762C: { const bool branch_taken = 0u == 0u; aot_gpr_4 = (15523u << 16u); if (branch_taken) { goto L_088A7640; } goto L_088A7634; } L_088A7634: aot_gpr_31 = (0x088A763Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0085_entry, 85u, 528u, 0x0895BBA4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A763Cu) goto L_088A763C; AOT_REGCACHE_SYNC_OUT(); return; L_088A763C: aot_gpr_4 = (15523u << 16u); goto L_088A7640; L_088A7640: aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(7676))); aot_gpr_4 = (aot_gpr_4 | 55050u); aot_fpr_13 = std::bit_cast(aot_gpr_4); aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(944))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_12 = aot_fpr_14 + aot_fpr_12; aot_mem.aot_direct_store32(ctx.gpr[22] + static_cast(944), std::bit_cast(aot_fpr_12)); goto L_088A765C; L_088A765C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(852))); aot_gpr_5 = (0u | 2u); if (aot_gpr_4 != aot_gpr_5) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); goto L_088A7730; } goto L_088A766C; L_088A766C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); goto L_088A7730; } goto L_088A7678; L_088A7678: ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(960))); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); aot_gpr_16 = (aot_gpr_29 + static_cast(48)); { const bool branch_taken = aot_gpr_4 == 0u; ctx.gpr[17] = (aot_gpr_29 + static_cast(80)); if (branch_taken) { goto L_088A76A4; } goto L_088A768C; } L_088A768C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; aot_gpr_4 = (ctx.gpr[18] + static_cast(16)); if (branch_taken) { goto L_088A76A8; } goto L_088A769C; } L_088A769C: aot_gpr_31 = (0x088A76A4u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A76A4u) goto L_088A76A4; AOT_REGCACHE_SYNC_OUT(); return; L_088A76A4: aot_gpr_4 = (ctx.gpr[18] + static_cast(16)); goto L_088A76A8; L_088A76A8: aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(64), aot_gpr_4); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); aot_gpr_4 = (aot_gpr_4 & ctx.gpr[20]); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(72), aot_gpr_4); aot_gpr_31 = (0x088A76C0u); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 939u, 0x0885FF48u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A76C0u) goto L_088A76C0; AOT_REGCACHE_SYNC_OUT(); return; L_088A76C0: { const std::uint32_t vfpu_address = aot_gpr_16 + 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[17] + static_cast(0); const std::uint32_t vfpu_words[4]{std::bit_cast(vfpu_value[0]), std::bit_cast(vfpu_value[1]), std::bit_cast(vfpu_value[2]), std::bit_cast(vfpu_value[3])}; aot_mem.aot_direct_store32_block(vfpu_address, vfpu_words); } aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[22] + static_cast(120))); aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25108))); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25104))); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_13) ^ 0x80000000u); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_13 <= aot_fpr_12)) ? 0x00800000u : 0u); { const bool branch_taken = !((ctx.fcr31 & 0x00800000u) != 0u); if (branch_taken) { goto L_088A7704; } goto L_088A76EC; } L_088A76EC: aot_fpr_14 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25104))); aot_fpr_13 = std::bit_cast(std::bit_cast(aot_fpr_12)); ctx.fcr31 = (ctx.fcr31 & ~0x00800000u) | (((aot_fpr_14 < aot_fpr_13)) ? 0x00800000u : 0u); if (((ctx.fcr31 & 0x00800000u) != 0u)) { aot_fpr_13 = std::bit_cast(aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(-25104))); goto L_088A7704; } goto L_088A7704; L_088A7704: aot_gpr_4 = (aot_gpr_29 | 0u); aot_gpr_31 = (0x088A7710u); aot_fpr_12 = std::bit_cast(std::bit_cast(aot_fpr_13)); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 919u, 0x0885F9D8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7710u) goto L_088A7710; AOT_REGCACHE_SYNC_OUT(); return; L_088A7710: { std::uint32_t aot_run_words[3]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(80), 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 = (0x088A7724u); aot_gpr_4 = (aot_gpr_29 | 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 == 0x088A7724u) goto L_088A7724; AOT_REGCACHE_SYNC_OUT(); return; L_088A7724: aot_gpr_31 = (0x088A772Cu); aot_gpr_4 = (aot_gpr_29 | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0022_entry, 22u, 936u, 0x0885FF14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A772Cu) goto L_088A772C; AOT_REGCACHE_SYNC_OUT(); return; L_088A772C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(72))); goto L_088A7730; L_088A7730: aot_gpr_4 = (aot_gpr_4 & 1u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A7750; } goto L_088A773C; } L_088A773C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { goto L_088A7750; } goto L_088A7748; } L_088A7748: aot_gpr_31 = (0x088A7750u); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_29 + static_cast(64))); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7750u) goto L_088A7750; AOT_REGCACHE_SYNC_OUT(); return; L_088A7750: { std::uint32_t aot_run_words[14]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(248), 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]; ctx.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]; ctx.gpr[21] = aot_run_words[9]; ctx.gpr[22] = aot_run_words[10]; ctx.gpr[23] = aot_run_words[11]; ctx.gpr[30] = aot_run_words[12]; aot_gpr_31 = aot_run_words[13]; } jump_target = aot_gpr_31; aot_gpr_29 = (aot_gpr_29 + static_cast(304)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } // PSPRECOMP_V812_SHARED_SCHED_JUMP goto LOCAL_SCHED_BOUNDARY; L_088A7790: aot_gpr_29 = (aot_gpr_29 + static_cast(-32)); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(0), aot_gpr_16); aot_gpr_16 = (aot_gpr_4 | 0u); ctx.gpr[7] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(4), ctx.gpr[17]); aot_gpr_4 = (0u | 2u); ctx.gpr[17] = (aot_gpr_5 | 0u); { const std::uint32_t aot_run_words[6]{ctx.gpr[18], ctx.gpr[19], ctx.gpr[20], ctx.gpr[21], ctx.gpr[22], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(8), aot_run_words); } { const bool branch_taken = ctx.gpr[7] != aot_gpr_4; ctx.gpr[18] = (aot_gpr_6 | 0u); if (branch_taken) { goto L_088A7ED4; } goto L_088A77CC; } L_088A77CC: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); aot_gpr_5 = (aot_gpr_5 & 496u); aot_gpr_6 = (0u | 64u); { const bool branch_taken = aot_gpr_5 != aot_gpr_6; ctx.gpr[19] = (0u | 0u); if (branch_taken) { goto L_088A79E0; } goto L_088A77E0; } L_088A77E0: aot_gpr_5 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = aot_gpr_5 == 0u; ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); if (branch_taken) { goto L_088A78A8; } goto L_088A77EC; } L_088A77EC: aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(620)))))); { const bool branch_taken = static_cast(aot_gpr_5) < 0; if (branch_taken) { goto L_088A78A8; } goto L_088A77F8; } L_088A77F8: aot_gpr_5 = (ctx.gpr[18] | 0u); ctx.gpr[18] = (2203u << 16u); { const bool branch_taken = aot_gpr_5 != aot_gpr_4; ctx.gpr[18] = (ctx.gpr[18] + static_cast(-21176)); if (branch_taken) { goto L_088A7844; } goto L_088A7808; } L_088A7808: if (ctx.gpr[21] != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7820; } goto L_088A7810; L_088A7810: aot_gpr_31 = (0x088A7818u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7818u) goto L_088A7818; AOT_REGCACHE_SYNC_OUT(); return; L_088A7818: ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7820; L_088A7820: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A7830u); ctx.gpr[7] = (0u | 118u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7830u) goto L_088A7830; AOT_REGCACHE_SYNC_OUT(); return; L_088A7830: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A783Cu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A783Cu) goto L_088A783C; AOT_REGCACHE_SYNC_OUT(); return; L_088A783C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7878; } goto L_088A7844; } L_088A7844: if (ctx.gpr[21] != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A785C; } goto L_088A784C; L_088A784C: aot_gpr_31 = (0x088A7854u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7854u) goto L_088A7854; AOT_REGCACHE_SYNC_OUT(); return; L_088A7854: ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A785C; L_088A785C: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A786Cu); ctx.gpr[7] = (0u | 119u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A786Cu) goto L_088A786C; AOT_REGCACHE_SYNC_OUT(); return; L_088A786C: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7878u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7878u) goto L_088A7878; AOT_REGCACHE_SYNC_OUT(); return; L_088A7878: aot_gpr_31 = (0x088A7880u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7880u) goto L_088A7880; AOT_REGCACHE_SYNC_OUT(); return; L_088A7880: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x088A7890u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7890u) goto L_088A7890; AOT_REGCACHE_SYNC_OUT(); return; L_088A7890: aot_gpr_4 = (0u + static_cast(-1)); aot_gpr_5 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(615)))))); aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(620), static_cast(aot_gpr_4)); aot_gpr_4 = (aot_gpr_5 | 16u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(615), static_cast(aot_gpr_4)); if (branch_taken) { goto L_088A7E28; } goto L_088A78A8; } L_088A78A8: aot_gpr_5 = (aot_mem.aot_direct_load16(ctx.gpr[17] + static_cast(2274))); ctx.gpr[20] = (2203u << 16u); aot_gpr_6 = (0u | 20u); { const bool branch_taken = aot_gpr_5 != aot_gpr_6; ctx.gpr[20] = (ctx.gpr[20] + static_cast(13856)); if (branch_taken) { goto L_088A7918; } goto L_088A78BC; } L_088A78BC: if (ctx.gpr[21] != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A78D4; } goto L_088A78C4; L_088A78C4: aot_gpr_31 = (0x088A78CCu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A78CCu) goto L_088A78CC; AOT_REGCACHE_SYNC_OUT(); return; L_088A78CC: ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A78D4; L_088A78D4: ctx.gpr[8] = (16576u << 16u); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_fpr_12 = std::bit_cast(ctx.gpr[8]); aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A78ECu); ctx.gpr[7] = (0u | 196u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 650u, 0x0893EA14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A78ECu) goto L_088A78EC; AOT_REGCACHE_SYNC_OUT(); return; L_088A78EC: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A78F8u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A78F8u) goto L_088A78F8; AOT_REGCACHE_SYNC_OUT(); return; L_088A78F8: aot_gpr_31 = (0x088A7900u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7900u) goto L_088A7900; AOT_REGCACHE_SYNC_OUT(); return; L_088A7900: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A7910u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7910u) goto L_088A7910; AOT_REGCACHE_SYNC_OUT(); return; L_088A7910: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A7918; } L_088A7918: { const bool branch_taken = ctx.gpr[18] == aot_gpr_4; aot_gpr_4 = (0u | 4u); if (branch_taken) { goto L_088A7928; } goto L_088A7920; } L_088A7920: { const bool branch_taken = ctx.gpr[18] != aot_gpr_4; if (branch_taken) { goto L_088A7978; } goto L_088A7928; } L_088A7928: if (ctx.gpr[21] != 0u) { ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7940; } goto L_088A7930; L_088A7930: aot_gpr_31 = (0x088A7938u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7938u) goto L_088A7938; AOT_REGCACHE_SYNC_OUT(); return; L_088A7938: ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7940; L_088A7940: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7950u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7950u) goto L_088A7950; AOT_REGCACHE_SYNC_OUT(); return; L_088A7950: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A7964u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7964u) goto L_088A7964; AOT_REGCACHE_SYNC_OUT(); return; L_088A7964: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7970u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7970u) goto L_088A7970; AOT_REGCACHE_SYNC_OUT(); return; L_088A7970: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A79C0; } goto L_088A7978; } L_088A7978: if (ctx.gpr[21] != 0u) { ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7990; } goto L_088A7980; L_088A7980: aot_gpr_31 = (0x088A7988u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7988u) goto L_088A7988; AOT_REGCACHE_SYNC_OUT(); return; L_088A7988: ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7990; L_088A7990: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A79A0u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A79A0u) goto L_088A79A0; AOT_REGCACHE_SYNC_OUT(); return; L_088A79A0: aot_gpr_4 = (ctx.gpr[21] | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A79B4u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A79B4u) goto L_088A79B4; AOT_REGCACHE_SYNC_OUT(); return; L_088A79B4: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A79C0u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A79C0u) goto L_088A79C0; AOT_REGCACHE_SYNC_OUT(); return; L_088A79C0: aot_gpr_31 = (0x088A79C8u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A79C8u) goto L_088A79C8; AOT_REGCACHE_SYNC_OUT(); return; L_088A79C8: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_31 = (0x088A79D8u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A79D8u) goto L_088A79D8; AOT_REGCACHE_SYNC_OUT(); return; L_088A79D8: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A79E0; } L_088A79E0: aot_gpr_5 = (aot_mem.aot_direct_load16(ctx.gpr[17] + static_cast(2274))); aot_gpr_6 = (0u | 20u); { const bool branch_taken = aot_gpr_5 != aot_gpr_6; if (branch_taken) { goto L_088A7A8C; } goto L_088A79F0; } L_088A79F0: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); aot_gpr_5 = (0u | 55u); aot_gpr_6 = (aot_gpr_4 + static_cast(2228)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); { const bool branch_taken = aot_gpr_6 != aot_gpr_5; if (branch_taken) { goto L_088A7A7C; } goto L_088A7A08; } L_088A7A08: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(460))); aot_gpr_5 = (4u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A7A7C; } goto L_088A7A1C; } L_088A7A1C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[19] = (2203u << 16u); { const bool branch_taken = aot_gpr_4 != 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(13856)); if (branch_taken) { goto L_088A7A38; } goto L_088A7A2C; } L_088A7A2C: aot_gpr_31 = (0x088A7A34u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A34u) goto L_088A7A34; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A34: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); goto L_088A7A38; L_088A7A38: aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); ctx.gpr[8] = (16576u << 16u); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_fpr_12 = std::bit_cast(ctx.gpr[8]); aot_gpr_31 = (0x088A7A50u); ctx.gpr[7] = (0u | 196u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 650u, 0x0893EA14u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A50u) goto L_088A7A50; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A50: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7A5Cu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A5Cu) goto L_088A7A5C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A5C: aot_gpr_31 = (0x088A7A64u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A64u) goto L_088A7A64; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A64: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A7A74u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A74u) goto L_088A7A74; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A74: { const bool branch_taken = 0u == 0u; ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); if (branch_taken) { goto L_088A7E28; } goto L_088A7A7C; } L_088A7A7C: aot_gpr_31 = (0x088A7A84u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0105_entry, 105u, 441u, 0x089AA5B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7A84u) goto L_088A7A84; AOT_REGCACHE_SYNC_OUT(); return; L_088A7A84: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A7A8C; } L_088A7A8C: { const bool branch_taken = ctx.gpr[18] == aot_gpr_4; aot_gpr_5 = (0u | 3u); if (branch_taken) { goto L_088A7A9C; } goto L_088A7A94; } L_088A7A94: { const bool branch_taken = ctx.gpr[18] != aot_gpr_5; if (branch_taken) { goto L_088A7C50; } goto L_088A7A9C; } L_088A7A9C: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); { const bool branch_taken = aot_gpr_5 == 0u; if (branch_taken) { goto L_088A7B84; } goto L_088A7AA8; } L_088A7AA8: aot_gpr_6 = (aot_gpr_5 + static_cast(2228)); aot_gpr_6 = (aot_mem.aot_direct_load32(aot_gpr_6 + static_cast(0))); ctx.gpr[7] = (0u | 55u); { const bool branch_taken = aot_gpr_6 != ctx.gpr[7]; if (branch_taken) { goto L_088A7B74; } goto L_088A7ABC; } L_088A7ABC: aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_5 + static_cast(460))); aot_gpr_6 = (4u << 16u); aot_gpr_5 = (aot_gpr_5 & aot_gpr_6); { const bool branch_taken = aot_gpr_5 != 0u; if (branch_taken) { goto L_088A7B74; } goto L_088A7AD0; } L_088A7AD0: aot_gpr_5 = (aot_gpr_4 | 0u); ctx.gpr[19] = (2203u << 16u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); { const bool branch_taken = ctx.gpr[18] != aot_gpr_5; ctx.gpr[19] = (ctx.gpr[19] + static_cast(-21176)); if (branch_taken) { goto L_088A7B1C; } goto L_088A7AE4; } L_088A7AE4: if (aot_gpr_4 != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7AFC; } goto L_088A7AEC; L_088A7AEC: aot_gpr_31 = (0x088A7AF4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7AF4u) goto L_088A7AF4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7AF4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7AFC; L_088A7AFC: aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A7B08u); ctx.gpr[7] = (0u | 118u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B08u) goto L_088A7B08; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B08: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7B14u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B14u) goto L_088A7B14; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B14: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7B4C; } goto L_088A7B1C; } L_088A7B1C: if (aot_gpr_4 != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7B34; } goto L_088A7B24; L_088A7B24: aot_gpr_31 = (0x088A7B2Cu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B2Cu) goto L_088A7B2C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B2C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7B34; L_088A7B34: aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A7B40u); ctx.gpr[7] = (0u | 119u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B40u) goto L_088A7B40; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B40: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7B4Cu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B4Cu) goto L_088A7B4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B4C: aot_gpr_31 = (0x088A7B54u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B54u) goto L_088A7B54; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B54: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A7B64u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B64u) goto L_088A7B64; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B64: ctx.gpr[19] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); aot_gpr_4 = (0u + static_cast(-1)); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(620), static_cast(aot_gpr_4)); if (branch_taken) { goto L_088A7E28; } goto L_088A7B74; } L_088A7B74: aot_gpr_31 = (0x088A7B7Cu); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0105_entry, 105u, 441u, 0x089AA5B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7B7Cu) goto L_088A7B7C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7B7C: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A7B84; } L_088A7B84: aot_gpr_5 = (ctx.gpr[18] | 0u); ctx.gpr[18] = (2203u << 16u); ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); { const bool branch_taken = aot_gpr_5 != aot_gpr_4; ctx.gpr[18] = (ctx.gpr[18] + static_cast(13856)); if (branch_taken) { goto L_088A7BE8; } goto L_088A7B98; } L_088A7B98: if (ctx.gpr[20] != 0u) { ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7BB0; } goto L_088A7BA0; L_088A7BA0: aot_gpr_31 = (0x088A7BA8u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7BA8u) goto L_088A7BA8; AOT_REGCACHE_SYNC_OUT(); return; L_088A7BA8: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7BB0; L_088A7BB0: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7BC0u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7BC0u) goto L_088A7BC0; AOT_REGCACHE_SYNC_OUT(); return; L_088A7BC0: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A7BD4u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7BD4u) goto L_088A7BD4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7BD4: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7BE0u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7BE0u) goto L_088A7BE0; AOT_REGCACHE_SYNC_OUT(); return; L_088A7BE0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7C30; } goto L_088A7BE8; } L_088A7BE8: if (ctx.gpr[20] != 0u) { ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7C00; } goto L_088A7BF0; L_088A7BF0: aot_gpr_31 = (0x088A7BF8u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7BF8u) goto L_088A7BF8; AOT_REGCACHE_SYNC_OUT(); return; L_088A7BF8: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7C00; L_088A7C00: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7C10u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C10u) goto L_088A7C10; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C10: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A7C24u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C24u) goto L_088A7C24; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C24: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7C30u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C30u) goto L_088A7C30; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C30: aot_gpr_31 = (0x088A7C38u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C38u) goto L_088A7C38; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C38: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x088A7C48u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C48u) goto L_088A7C48; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C48: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A7C50; } L_088A7C50: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7C5Cu); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C5Cu) goto L_088A7C5C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C5C: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A7D60; } goto L_088A7C64; } L_088A7C64: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7C70u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C70u) goto L_088A7C70; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C70: aot_gpr_4 = (ctx.gpr[2] + static_cast(2228)); aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(0))); aot_gpr_5 = (0u | 55u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; aot_gpr_4 = (aot_gpr_16 | 0u); if (branch_taken) { goto L_088A7D50; } goto L_088A7C84; } L_088A7C84: aot_gpr_31 = (0x088A7C8Cu); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7C8Cu) goto L_088A7C8C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7C8C: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[2] + static_cast(460))); aot_gpr_5 = (4u << 16u); aot_gpr_4 = (aot_gpr_4 & aot_gpr_5); { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A7D50; } goto L_088A7CA0; } L_088A7CA0: ctx.gpr[19] = (2203u << 16u); aot_gpr_5 = (0u | 4u); aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); { const bool branch_taken = ctx.gpr[18] != aot_gpr_5; ctx.gpr[19] = (ctx.gpr[19] + static_cast(-21176)); if (branch_taken) { goto L_088A7CEC; } goto L_088A7CB4; } L_088A7CB4: if (aot_gpr_4 != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7CCC; } goto L_088A7CBC; L_088A7CBC: aot_gpr_31 = (0x088A7CC4u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7CC4u) goto L_088A7CC4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7CC4: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7CCC; L_088A7CCC: aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A7CD8u); ctx.gpr[7] = (0u | 118u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7CD8u) goto L_088A7CD8; AOT_REGCACHE_SYNC_OUT(); return; L_088A7CD8: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7CE4u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7CE4u) goto L_088A7CE4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7CE4: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7D1C; } goto L_088A7CEC; } L_088A7CEC: if (aot_gpr_4 != 0u) { aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7D04; } goto L_088A7CF4; L_088A7CF4: aot_gpr_31 = (0x088A7CFCu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7CFCu) goto L_088A7CFC; AOT_REGCACHE_SYNC_OUT(); return; L_088A7CFC: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); aot_gpr_5 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7D04; L_088A7D04: aot_gpr_6 = (0u | 0u); aot_gpr_31 = (0x088A7D10u); ctx.gpr[7] = (0u | 119u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D10u) goto L_088A7D10; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D10: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7D1Cu); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D1Cu) goto L_088A7D1C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D1C: aot_gpr_31 = (0x088A7D24u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D24u) goto L_088A7D24; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D24: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A7D34u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D34u) goto L_088A7D34; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D34: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7D40u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D40u) goto L_088A7D40; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D40: aot_gpr_4 = (0u + static_cast(-1)); ctx.gpr[19] = (ctx.gpr[2] | 0u); { const bool branch_taken = 0u == 0u; aot_mem.aot_direct_store8(aot_gpr_16 + static_cast(620), static_cast(aot_gpr_4)); if (branch_taken) { goto L_088A7E28; } goto L_088A7D50; } L_088A7D50: aot_gpr_31 = (0x088A7D58u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0105_entry, 105u, 441u, 0x089AA5B8u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D58u) goto L_088A7D58; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D58: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E28; } goto L_088A7D60; } L_088A7D60: aot_gpr_4 = (ctx.gpr[18] | 0u); ctx.gpr[18] = (2203u << 16u); aot_gpr_5 = (0u | 4u); ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; ctx.gpr[18] = (ctx.gpr[18] + static_cast(13856)); if (branch_taken) { goto L_088A7DC8; } goto L_088A7D78; } L_088A7D78: if (ctx.gpr[20] != 0u) { ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7D90; } goto L_088A7D80; L_088A7D80: aot_gpr_31 = (0x088A7D88u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7D88u) goto L_088A7D88; AOT_REGCACHE_SYNC_OUT(); return; L_088A7D88: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7D90; L_088A7D90: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7DA0u); aot_gpr_5 = (0u | 1u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7DA0u) goto L_088A7DA0; AOT_REGCACHE_SYNC_OUT(); return; L_088A7DA0: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A7DB4u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7DB4u) goto L_088A7DB4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7DB4: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7DC0u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7DC0u) goto L_088A7DC0; AOT_REGCACHE_SYNC_OUT(); return; L_088A7DC0: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7E10; } goto L_088A7DC8; } L_088A7DC8: if (ctx.gpr[20] != 0u) { ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7DE0; } goto L_088A7DD0; L_088A7DD0: aot_gpr_31 = (0x088A7DD8u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7DD8u) goto L_088A7DD8; AOT_REGCACHE_SYNC_OUT(); return; L_088A7DD8: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[21] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); goto L_088A7DE0; L_088A7DE0: ctx.gpr[22] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7DF0u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7DF0u) goto L_088A7DF0; AOT_REGCACHE_SYNC_OUT(); return; L_088A7DF0: aot_gpr_4 = (ctx.gpr[20] | 0u); aot_gpr_5 = (ctx.gpr[21] | 0u); aot_gpr_6 = (ctx.gpr[22] | 0u); aot_gpr_31 = (0x088A7E04u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E04u) goto L_088A7E04; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E04: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7E10u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E10u) goto L_088A7E10; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E10: aot_gpr_31 = (0x088A7E18u); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E18u) goto L_088A7E18; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E18: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[18] | 0u); aot_gpr_31 = (0x088A7E28u); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E28u) goto L_088A7E28; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E28: { const bool branch_taken = ctx.gpr[19] == 0u; if (branch_taken) { goto L_088A7ECC; } goto L_088A7E30; } L_088A7E30: aot_gpr_6 = (aot_mem.aot_direct_load16(ctx.gpr[17] + static_cast(2274))); aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7E44u); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0106_entry, 106u, 567u, 0x089AE4F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E44u) goto L_088A7E44; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E44: aot_gpr_31 = (0x088A7E4Cu); aot_gpr_4 = (ctx.gpr[19] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0066_entry, 66u, 319u, 0x0890D46Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E4Cu) goto L_088A7E4C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E4C: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[18] = (0u | 6u); if (branch_taken) { goto L_088A7E60; } goto L_088A7E54; } L_088A7E54: aot_gpr_4 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A7E60u); aot_gpr_5 = (ctx.gpr[17] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0108_entry, 108u, 119u, 0x089B4624u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E60u) goto L_088A7E60; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E60: aot_gpr_4 = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(1360))); { const bool branch_taken = aot_gpr_4 != ctx.gpr[18]; if (branch_taken) { goto L_088A7E90; } goto L_088A7E6C; } L_088A7E6C: aot_gpr_31 = (0x088A7E74u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08960424, 87u, 0x08960424u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7E74u) goto L_088A7E74; AOT_REGCACHE_SYNC_OUT(); return; L_088A7E74: { const bool branch_taken = ctx.gpr[19] != ctx.gpr[2]; if (branch_taken) { goto L_088A7E90; } goto L_088A7E7C; } L_088A7E7C: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(852))); { const bool branch_taken = aot_gpr_4 != ctx.gpr[18]; if (branch_taken) { goto L_088A7E90; } goto L_088A7E88; } L_088A7E88: aot_gpr_4 = (0u | 1u); aot_mem.aot_direct_store8(ctx.gpr[17] + static_cast(2301), static_cast(aot_gpr_4)); goto L_088A7E90; L_088A7E90: aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(900))); { const bool branch_taken = ctx.gpr[19] != aot_gpr_4; aot_gpr_4 = (aot_gpr_16 | 0u); if (branch_taken) { goto L_088A7ECC; } goto L_088A7E9C; } L_088A7E9C: aot_gpr_31 = (0x088A7EA4u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7EA4u) goto L_088A7EA4; AOT_REGCACHE_SYNC_OUT(); return; L_088A7EA4: { const bool branch_taken = ctx.gpr[2] == 0u; if (branch_taken) { goto L_088A7ECC; } goto L_088A7EAC; } L_088A7EAC: aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7EB8u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_compact_generated_leaf<&vcs_compact_leaf_08AFEF7C, 190u, 0x08AFEF7Cu>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7EB8u) goto L_088A7EB8; AOT_REGCACHE_SYNC_OUT(); return; L_088A7EB8: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (aot_gpr_16 | 0u); aot_gpr_6 = (0u | 11u); aot_gpr_31 = (0x088A7ECCu); ctx.gpr[7] = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0106_entry, 106u, 567u, 0x089AE4F4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7ECCu) goto L_088A7ECC; AOT_REGCACHE_SYNC_OUT(); return; L_088A7ECC: { const bool branch_taken = 0u == 0u; if (branch_taken) { goto L_088A7F3C; } goto L_088A7ED4; } L_088A7ED4: ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); ctx.gpr[19] = (2203u << 16u); { const bool branch_taken = ctx.gpr[18] != 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(13856)); if (branch_taken) { goto L_088A7EF0; } goto L_088A7EE4; } L_088A7EE4: aot_gpr_31 = (0x088A7EECu); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7EECu) goto L_088A7EEC; AOT_REGCACHE_SYNC_OUT(); return; L_088A7EEC: ctx.gpr[18] = (aot_mem.aot_direct_load32(ctx.gpr[28] + static_cast(5836))); goto L_088A7EF0; L_088A7EF0: ctx.gpr[20] = (aot_mem.aot_direct_load32(ctx.gpr[17] + static_cast(80))); ctx.gpr[21] = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(1120))); aot_gpr_4 = (aot_gpr_16 | 0u); aot_gpr_31 = (0x088A7F04u); aot_gpr_5 = (0u | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0149_entry, 149u, 294u, 0x08A59500u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7F04u) goto L_088A7F04; AOT_REGCACHE_SYNC_OUT(); return; L_088A7F04: aot_gpr_4 = (ctx.gpr[18] | 0u); aot_gpr_5 = (ctx.gpr[20] | 0u); aot_gpr_6 = (ctx.gpr[21] | 0u); aot_gpr_31 = (0x088A7F18u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0078_entry, 78u, 635u, 0x0893E914u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7F18u) goto L_088A7F18; AOT_REGCACHE_SYNC_OUT(); return; L_088A7F18: aot_gpr_4 = (ctx.gpr[17] | 0u); aot_gpr_31 = (0x088A7F24u); aot_gpr_5 = (ctx.gpr[2] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F694, 66u, 781u, 0x0890F694u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 781u, 0x0890F694u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7F24u) goto L_088A7F24; AOT_REGCACHE_SYNC_OUT(); return; L_088A7F24: aot_gpr_31 = (0x088A7F2Cu); aot_gpr_4 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_0890F6B4, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem, ctx.pc, ctx.gpr[2], aot_gpr_4, aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0066_entry, 66u, 784u, 0x0890F6B4u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7F2Cu) goto L_088A7F2C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7F2C: aot_gpr_4 = (ctx.gpr[2] | 0u); aot_gpr_5 = (ctx.gpr[19] | 0u); aot_gpr_31 = (0x088A7F3Cu); aot_gpr_6 = (ctx.gpr[17] | 0u); if (([&]() { /*PSPRECOMP_RESIDENT_SCHED_SAFE*/ if (rt.resident_generated_leaf_fast_allowed()) return rt.invoke_resident_generated_leaf<&vcs_resident_region_088905F0, 35u, 95u, 0x088905F0u>(ctx, &aot_mem, ctx.pc, aot_gpr_4, aot_gpr_5, aot_gpr_6, ctx.gpr[7], aot_gpr_31); AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_resident_scheduler_fallback<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem)); if (aot_regcache_same_) AOT_REGCACHE_SYNC_IN(); else aot_regcache_valid = false; return aot_regcache_same_; }()) && ctx.pc == 0x088A7F3Cu) goto L_088A7F3C; AOT_REGCACHE_SYNC_OUT(); return; L_088A7F3C: { std::uint32_t aot_run_words[8]{}; aot_mem.aot_direct_load32_block(aot_gpr_29 + static_cast(0), aot_run_words); aot_gpr_16 = aot_run_words[0]; ctx.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]; 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_088A7F64: aot_gpr_29 = (aot_gpr_29 + static_cast(-80)); aot_fpr_12 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(268))); aot_gpr_5 = (17480u << 16u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(48), std::bit_cast(aot_fpr_20)); aot_fpr_13 = std::bit_cast(aot_gpr_5); aot_fpr_20 = std::bit_cast(aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(208))); aot_gpr_5 = (aot_mem.aot_direct_load32(aot_gpr_4 + static_cast(72))); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(56), aot_gpr_16); { const float fs = aot_fpr_12; const float ft = aot_fpr_13; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_12 = std::bit_cast(0x7FC00000u); else aot_fpr_12 = fs * ft; } aot_gpr_16 = (aot_gpr_4 | 0u); aot_fpr_20 = aot_fpr_12 / aot_fpr_20; aot_gpr_4 = (aot_gpr_5 & 496u); aot_mem.aot_direct_store32(aot_gpr_29 + static_cast(52), std::bit_cast(ctx.fpr[22])); { const std::uint32_t aot_run_words[3]{ctx.gpr[17], ctx.gpr[18], aot_gpr_31}; aot_mem.aot_direct_store32_block(aot_gpr_29 + static_cast(60), aot_run_words); } { const bool branch_taken = aot_gpr_4 != 0u; if (branch_taken) { goto L_088A7FC0; } goto L_088A7FAC; } L_088A7FAC: aot_gpr_4 = (16166u << 16u); aot_gpr_4 = (aot_gpr_4 | 26214u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const bool branch_taken = 0u == 0u; { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } if (branch_taken) { goto L_088A7FE0; } goto L_088A7FC0; } L_088A7FC0: aot_gpr_4 = (aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(612))); aot_gpr_5 = (0u | 2u); { const bool branch_taken = aot_gpr_4 != aot_gpr_5; if (branch_taken) { goto L_088A7FE0; } goto L_088A7FD0; } L_088A7FD0: aot_gpr_4 = (16076u << 16u); aot_gpr_4 = (aot_gpr_4 | 52429u); aot_fpr_12 = std::bit_cast(aot_gpr_4); { const float fs = aot_fpr_20; const float ft = aot_fpr_12; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) aot_fpr_20 = std::bit_cast(0x7FC00000u); else aot_fpr_20 = fs * ft; } goto L_088A7FE0; L_088A7FE0: aot_gpr_4 = (static_cast(static_cast(static_cast(aot_mem.aot_direct_load8(aot_gpr_16 + static_cast(615)))))); aot_gpr_4 = (aot_gpr_4 & 64u); { const bool branch_taken = aot_gpr_4 == 0u; if (branch_taken) { (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 1u, 0x088A8004u>(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_088A7FF0; } L_088A7FF0: aot_gpr_4 = (aot_mem.aot_direct_load8(ctx.gpr[28] + static_cast(-7080))); if (aot_gpr_4 == 0u) { aot_gpr_4 = (aot_mem.aot_direct_load32(aot_gpr_16 + static_cast(72))); (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 2u, 0x088A800Cu>(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_088A7FFC; L_088A7FFC: { const bool branch_taken = 0u == 0u; if (branch_taken) { (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 5u, 0x088A8038u>(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; } (void)([&]() { AOT_REGCACHE_SYNC_OUT(); const bool aot_regcache_same_ = (rt.invoke_chained_trusted_direct<&recomp_unit_0041_entry, 41u, 1u, 0x088A8004u>(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; } } #undef AOT_REGCACHE_SYNC_IN #undef AOT_REGCACHE_SYNC_OUT void recomp_unit_0040(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0040_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_40(Runtime &runtime) { runtime.register_generated_unit(40u, 0x088A4000u, 16384u, &recomp_unit_0040, &recomp_unit_0040_entry); // PSPRECOMP_V812_COMPACT_REGISTRATION: same entry set, looped once in Runtime instead of source-expanded calls. runtime.register_generated_entry_mask(0x088A4000u, &recomp_unit_0040, "recomp_unit_0040", kEntryMasks_recomp_unit_0040, 64u); } } // namespace psprecomp