#include "psprecomp/runtime.hpp" #include "generated_units.hpp" #include #include #include #include namespace psprecomp { static const std::uint16_t kEntryIds_recomp_unit_0007[4087] = { 1, 2, 3, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 6, 0, 7, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 14, 0, 0, 15, 0, 16, 0, 17, 0, 18, 0, 19, 0, 20, 0, 21, 0, 22, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 28, 0, 29, 0, 30, 0, 0, 0, 0, 0, 0, 31, 0, 32, 0, 33, 0, 34, 0, 35, 0, 0, 0, 0, 0, 36, 0, 37, 0, 38, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 41, 0, 0, 42, 0, 43, 0, 44, 0, 0, 0, 0, 0, 0, 0, 45, 0, 46, 0, 47, 0, 48, 0, 0, 0, 49, 0, 50, 0, 0, 0, 0, 0, 0, 0, 51, 0, 52, 0, 0, 0, 53, 0, 54, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 0, 0, 0, 57, 0, 58, 0, 59, 0, 0, 0, 60, 0, 61, 0, 62, 0, 63, 0, 0, 0, 64, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 66, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 70, 0, 71, 0, 72, 0, 0, 0, 73, 0, 0, 74, 0, 0, 0, 75, 0, 76, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 80, 0, 81, 0, 0, 0, 0, 0, 82, 0, 0, 0, 0, 0, 83, 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, 0, 90, 0, 0, 0, 91, 0, 92, 0, 0, 0, 0, 93, 0, 94, 0, 0, 0, 95, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 0, 101, 0, 0, 0, 102, 0, 0, 0, 103, 0, 104, 0, 105, 0, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 0, 107, 0, 108, 0, 0, 0, 109, 110, 0, 0, 111, 0, 0, 0, 112, 0, 0, 113, 114, 0, 0, 0, 0, 0, 0, 0, 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 118, 0, 119, 0, 0, 0, 0, 0, 0, 0, 0, 120, 0, 0, 0, 121, 0, 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, 0, 0, 125, 0, 0, 126, 0, 0, 0, 0, 0, 0, 0, 127, 0, 128, 0, 0, 129, 0, 0, 0, 130, 0, 0, 0, 0, 0, 131, 0, 0, 0, 0, 132, 0, 0, 133, 0, 0, 134, 135, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 138, 0, 139, 0, 0, 0, 0, 0, 0, 0, 0, 140, 0, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 142, 0, 0, 0, 0, 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 145, 0, 146, 0, 147, 0, 148, 149, 0, 150, 0, 0, 151, 0, 0, 0, 0, 0, 0, 152, 0, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 0, 0, 156, 0, 157, 0, 158, 0, 0, 0, 0, 0, 0, 159, 0, 0, 160, 0, 161, 0, 162, 0, 163, 0, 164, 0, 0, 165, 0, 0, 166, 0, 0, 167, 0, 0, 168, 0, 169, 0, 170, 0, 0, 171, 0, 172, 0, 0, 0, 0, 173, 0, 0, 174, 0, 175, 0, 176, 0, 0, 177, 0, 0, 0, 0, 0, 178, 0, 179, 0, 180, 0, 0, 0, 181, 0, 0, 0, 182, 0, 0, 0, 0, 0, 0, 183, 0, 0, 0, 0, 0, 0, 184, 0, 185, 0, 186, 0, 0, 0, 187, 0, 188, 0, 0, 189, 0, 0, 0, 0, 0, 190, 0, 191, 0, 192, 193, 0, 0, 0, 0, 0, 0, 0, 194, 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, 196, 0, 0, 0, 197, 0, 198, 199, 0, 0, 0, 200, 0, 0, 201, 0, 0, 202, 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 204, 0, 0, 0, 0, 0, 0, 0, 205, 0, 206, 0, 0, 0, 0, 0, 0, 0, 0, 207, 0, 0, 0, 208, 0, 209, 210, 0, 0, 211, 212, 0, 0, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 214, 0, 0, 215, 0, 0, 0, 0, 0, 0, 216, 0, 217, 0, 0, 0, 0, 0, 0, 0, 0, 218, 0, 0, 0, 0, 0, 0, 0, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 0, 0, 0, 0, 0, 222, 0, 0, 223, 0, 0, 0, 0, 0, 0, 0, 224, 225, 0, 0, 0, 0, 0, 226, 0, 0, 0, 0, 0, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 228, 0, 0, 0, 0, 229, 0, 0, 0, 230, 0, 0, 0, 0, 0, 231, 0, 0, 0, 0, 0, 232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 233, 0, 0, 0, 0, 234, 0, 0, 0, 235, 0, 0, 0, 0, 236, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 242, 0, 0, 0, 0, 0, 0, 0, 0, 243, 0, 0, 0, 0, 0, 244, 245, 0, 0, 0, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, 0, 0, 0, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250, 251, 0, 0, 252, 0, 0, 0, 0, 0, 0, 0, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254, 0, 0, 0, 0, 0, 0, 0, 0, 255, 256, 0, 257, 0, 0, 0, 0, 258, 0, 259, 0, 0, 260, 0, 0, 0, 0, 0, 0, 261, 0, 0, 262, 0, 263, 0, 0, 264, 0, 0, 0, 265, 0, 0, 266, 0, 0, 0, 267, 0, 268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 0, 0, 0, 0, 0, 272, 0, 0, 273, 0, 0, 0, 0, 0, 0, 274, 0, 0, 275, 0, 0, 0, 0, 0, 276, 0, 0, 0, 0, 0, 277, 0, 0, 0, 0, 0, 278, 0, 0, 0, 279, 0, 0, 0, 280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 281, 0, 0, 0, 0, 0, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 283, 0, 284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 285, 0, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 0, 0, 291, 0, 0, 0, 292, 0, 293, 0, 294, 0, 0, 0, 295, 0, 296, 0, 297, 0, 0, 0, 0, 0, 0, 298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, 301, 0, 0, 0, 302, 0, 303, 0, 304, 0, 0, 0, 305, 0, 306, 0, 307, 0, 0, 0, 0, 0, 308, 0, 0, 0, 0, 0, 0, 0, 0, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, 311, 0, 0, 0, 0, 0, 312, 0, 0, 0, 0, 313, 0, 0, 0, 0, 0, 0, 0, 314, 0, 315, 0, 0, 0, 0, 316, 0, 317, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 318, 0, 319, 0, 0, 320, 0, 321, 0, 0, 0, 0, 0, 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 323, 0, 0, 324, 0, 0, 0, 0, 0, 0, 0, 0, 325, 0, 0, 326, 0, 0, 0, 0, 0, 0, 0, 0, 327, 0, 0, 328, 0, 0, 0, 0, 0, 0, 0, 0, 329, 0, 0, 330, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 331, 0, 332, 0, 333, 0, 0, 0, 0, 0, 334, 0, 335, 0, 336, 0, 0, 337, 0, 338, 0, 339, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 340, 0, 341, 0, 0, 0, 342, 0, 0, 0, 0, 0, 0, 0, 0, 343, 344, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345, 346, 0, 347, 0, 0, 0, 348, 0, 0, 0, 349, 0, 350, 0, 0, 0, 0, 0, 0, 0, 351, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352, 0, 0, 0, 0, 0, 0, 0, 0, 353, 0, 354, 0, 355, 0, 356, 0, 0, 0, 0, 0, 357, 0, 358, 0, 0, 0, 359, 0, 0, 0, 0, 0, 0, 0, 360, 361, 0, 0, 0, 362, 0, 0, 363, 0, 0, 364, 0, 365, 0, 366, 0, 367, 0, 0, 368, 0, 369, 0, 0, 0, 370, 0, 0, 0, 0, 0, 0, 371, 0, 0, 0, 0, 0, 372, 0, 373, 0, 0, 0, 0, 0, 374, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 375, 0, 376, 377, 0, 0, 0, 0, 0, 378, 0, 379, 0, 0, 0, 0, 380, 0, 0, 0, 0, 0, 381, 0, 0, 0, 0, 0, 0, 382, 0, 0, 0, 0, 0, 0, 0, 383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 384, 385, 0, 0, 0, 0, 0, 386, 387, 0, 0, 0, 0, 0, 0, 388, 389, 0, 0, 0, 390, 391, 0, 392, 0, 393, 0, 394, 0, 395, 396, 0, 0, 0, 0, 0, 397, 0, 398, 399, 0, 0, 0, 0, 400, 0, 401, 402, 0, 0, 0, 0, 403, 0, 404, 405, 0, 0, 0, 0, 0, 406, 0, 407, 408, 0, 0, 0, 0, 409, 0, 410, 411, 0, 0, 412, 0, 0, 0, 0, 0, 0, 0, 413, 0, 414, 0, 415, 0, 416, 0, 417, 0, 0, 418, 0, 0, 0, 0, 0, 0, 0, 419, 0, 0, 420, 0, 421, 0, 0, 422, 0, 423, 0, 0, 0, 0, 424, 0, 425, 426, 0, 0, 0, 0, 427, 0, 428, 429, 0, 0, 0, 0, 430, 0, 431, 432, 0, 0, 0, 0, 433, 0, 434, 435, 0, 0, 0, 0, 436, 0, 437, 438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 440, 0, 0, 0, 0, 0, 0, 441, 0, 442, 0, 443, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 445, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 447, 0, 0, 0, 448, 0, 0, 0, 449, 0, 0, 0, 450, 0, 0, 0, 451, 0, 452, 453, 0, 0, 454, 0, 0, 455, 0, 0, 456, 0, 0, 457, 0, 458, 459, 0, 0, 0, 0, 460, 0, 461, 0, 0, 462, 0, 463, 464, 0, 0, 0, 0, 465, 466, 0, 467, 0, 0, 468, 0, 0, 0, 0, 0, 469, 0, 0, 470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 471, 0, 0, 0, 0, 0, 472, 0, 0, 0, 0, 0, 0, 0, 0, 473, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 475, 0, 476, 0, 477, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 478, 0, 0, 0, 0, 0, 0, 0, 479, 0, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 481, 0, 0, 0, 0, 0, 0, 0, 0, 0, 482, 483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 484, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 485, 486, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 487, 0, 488, 0, 0, 0, 0, 0, 0, 489, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 494, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 495, 0, 496, 0, 0, 0, 0, 497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 498, 0, 0, 0, 0, 499, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 501, 0, 0, 0, 502, 0, 503, 0, 504, 0, 0, 0, 0, 0, 505, 0, 0, 0, 0, 0, 506, 0, 0, 0, 507, 0, 508, 0, 0, 0, 509, 0, 0, 0, 510, 0, 0, 511, 0, 512, 0, 513, 514, 0, 515, 0, 516, 0, 0, 0, 0, 0, 517, 0, 0, 0, 0, 518, 0, 519, 0, 0, 0, 0, 0, 0, 0, 0, 520, 0, 0, 0, 0, 521, 0, 522, 523, 0, 524, 0, 0, 525, 0, 526, 0, 0, 0, 0, 0, 0, 0, 0, 527, 0, 0, 0, 0, 528, 0, 529, 0, 530, 0, 531, 0, 532, 0, 533, 0, 534, 0, 0, 535, 0, 0, 0, 0, 0, 0, 0, 0, 536, 0, 0, 0, 0, 537, 0, 538, 0, 539, 0, 540, 0, 541, 0, 0, 542, 0, 0, 543, 0, 544, 0, 545, 0, 0, 0, 0, 546, 0, 547, 0, 548, 0, 0, 549, 0, 550, 0, 551, 0, 0, 0, 0, 0, 0, 0, 0, 552, 0, 0, 0, 0, 553, 0, 0, 0, 0, 554, 0, 0, 0, 0, 0, 555, 0, 0, 0, 556, 0, 0, 0, 0, 0, 0, 0, 0, 557, 0, 0, 0, 0, 558, 0, 0, 0, 0, 559, 0, 0, 560, 0, 0, 0, 0, 0, 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, 0, 0, 563, 0, 564, 0, 0, 0, 0, 0, 0, 565, 0, 566, 0, 567, 0, 0, 0, 0, 0, 568, 0, 0, 0, 0, 0, 569, 0, 0, 0, 0, 0, 0, 0, 0, 0, 570, 0, 0, 0, 0, 0, 0, 0, 0, 571, 0, 0, 0, 0, 572, 0, 573, 0, 0, 0, 0, 0, 0, 0, 0, 574, 0, 0, 0, 0, 575, 0, 0, 0, 0, 0, 0, 576, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 577, 0, 0, 578, 0, 0, 0, 0, 0, 0, 0, 0, 579, 0, 0, 580, 0, 0, 0, 0, 0, 0, 0, 581, 0, 582, 583, 0, 0, 0, 0, 0, 584, 0, 585, 0, 0, 0, 0, 0, 586, 0, 0, 0, 0, 0, 587, 0, 588, 0, 589, 0, 0, 590, 591, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 593, 0, 594, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 595, 0, 596, 0, 0, 597, 0, 598, 0, 599, 0, 600, 0, 601, 0, 602, 0, 0, 0, 603, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 604, 0, 0, 605, 0, 0, 606, 0, 607, 0, 608, 0, 0, 0, 0, 0, 0, 0, 609, 0, 610, 0, 0, 0, 0, 0, 611, 0, 0, 0, 0, 0, 0, 0, 0, 0, 612, 0, 0, 613, 0, 614, 0, 615, 0, 616, 0, 617, 0, 0, 0, 618, 0, 619, 0, 0, 0, 0, 0, 620, 0, 0, 621, 0, 622, 0, 623, 0, 624, 0, 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, 0, 626, 0, 0, 0, 627, 0, 628, 0, 0, 0, 0, 0, 0, 0, 629, 0, 630, 0, 631, 0, 632, 0, 0, 0, 633, 634, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 636, 0, 0, 637, 0, 0, 0, 0, 0, 0, 0, 638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639, 0, 0, 640, 0, 0, 0, 641, 0, 0, 642, 0, 0, 0, 0, 0, 0, 643, 0, 644, 0, 645, 0, 0, 0, 0, 646, 647, 0, 0, 0, 0, 0, 648, 0, 0, 0, 0, 0, 0, 649, 0, 0, 0, 0, 650, 0, 0, 651, 0, 0, 652, 0, 653, 0, 0, 0, 0, 654, 0, 655, 0, 0, 0, 0, 0, 0, 0, 0, 656, 0, 0, 657, 0, 658, 659, 0, 0, 0, 660, 0, 0, 0, 661, 0, 0, 0, 0, 0, 0, 662, 0, 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, 664, 0, 0, 0, 665, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 666, 0, 0, 667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 668, 0, 669, 0, 0, 0, 670, 0, 671, 0, 672, 0, 673, 0, 674, 0, 675, 0, 676, 677, 0, 0, 0, 0, 0, 0, 678, 0, 0, 0, 0, 679, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 680, 0, 0, 0, 0, 0, 0, 681, 0, 0, 0, 0, 0, 0, 682, 0, 0, 683, 0, 684, 685, 0, 686, 0, 687, 0, 0, 688, 0, 0, 0, 689, 0, 0, 690, 0, 691, 0, 692, 0, 0, 0, 0, 693, 0, 0, 694, 695, 0, 696, 0, 697, 0, 0, 0, 0, 698, 0, 0, 0, 0, 0, 0, 0, 699, 0, 0, 0, 0, 0, 0, 0, 0, 0, 700, 0, 0, 701, 0, 702, 0, 703, 0, 0, 0, 0, 704, 0, 0, 705, 0, 0, 706, 0, 707, 0, 708, 0, 709, 0, 710, 711, 0, 712, 0, 713, 0, 714, 0, 715, 0, 0, 716, 0, 717, 0, 718, 0, 719, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 721, 0, 0, 0, 0, 722, 0, 0, 0, 723, 724, 0, 725, 0, 726, 727, 0, 728, 0, 729, 730, 0, 731, 0, 732, 733, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 734, 0, 735, 0, 0, 0, 0, 0, 0, 0, 0, 736, 0, 0, 0, 0, 0, 737, 0, 0, 0, 0, 0, 0, 0, 0, 738, 739, 0, 0, 740, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 742, 0, 0, 0, 0, 743, 0, 0, 0, 0, 744, 0, 745, 0, 0, 0, 0, 746, 0, 0, 0, 0, 0, 747, 0, 0, 0, 0, 748, 0, 0, 0, 0, 0, 749, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 751, 0, 0, 752, }; void recomp_unit_0007_entry(Runtime &rt, AllegrexContext &ctx, std::uint16_t direct_entry_id, GuestMemory::AotFastView &aot_mem) { std::uint32_t jump_target = 0u; std::uint32_t local_transfers = 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 - 0x08820000u; entry_id = (entry_delta < 16348u && (entry_delta & 3u) == 0u) ? kEntryIds_recomp_unit_0007[entry_delta >> 2u] : 0u; } switch (entry_id) { case 1u: goto L_08820000; case 2u: goto L_08820004; case 3u: goto L_08820008; case 4u: goto L_0882001C; case 5u: goto L_08820064; case 6u: goto L_08820070; case 7u: goto L_08820078; case 8u: goto L_08820084; case 9u: goto L_088200B4; case 10u: goto L_088200B8; case 11u: goto L_088200C8; case 12u: goto L_088200E8; case 13u: goto L_0882012C; case 14u: goto L_0882013C; case 15u: goto L_08820148; case 16u: goto L_08820150; case 17u: goto L_08820158; case 18u: goto L_08820160; case 19u: goto L_08820168; case 20u: goto L_08820170; case 21u: goto L_08820178; case 22u: goto L_08820180; case 23u: goto L_08820184; case 24u: goto L_088201A4; case 25u: goto L_088201AC; case 26u: goto L_088201D0; case 27u: goto L_08820204; case 28u: goto L_08820210; case 29u: goto L_08820218; case 30u: goto L_08820220; case 31u: goto L_0882023C; case 32u: goto L_08820244; case 33u: goto L_0882024C; case 34u: goto L_08820254; case 35u: goto L_0882025C; case 36u: goto L_08820274; case 37u: goto L_0882027C; case 38u: goto L_08820284; case 39u: goto L_0882028C; case 40u: goto L_088202B4; case 41u: goto L_088202BC; case 42u: goto L_088202C8; case 43u: goto L_088202D0; case 44u: goto L_088202D8; case 45u: goto L_088202F8; case 46u: goto L_08820300; case 47u: goto L_08820308; case 48u: goto L_08820310; case 49u: goto L_08820320; case 50u: goto L_08820328; case 51u: goto L_08820348; case 52u: goto L_08820350; case 53u: goto L_08820360; case 54u: goto L_08820368; case 55u: goto L_08820384; case 56u: goto L_088203C8; case 57u: goto L_088203E0; case 58u: goto L_088203E8; case 59u: goto L_088203F0; case 60u: goto L_08820400; case 61u: goto L_08820408; case 62u: goto L_08820410; case 63u: goto L_08820418; case 64u: goto L_08820428; case 65u: goto L_08820430; case 66u: goto L_08820454; case 67u: goto L_08820458; case 68u: goto L_08820488; case 69u: goto L_088204A0; case 70u: goto L_088204B8; case 71u: goto L_088204C0; case 72u: goto L_088204C8; case 73u: goto L_088204D8; case 74u: goto L_088204E4; case 75u: goto L_088204F4; case 76u: goto L_088204FC; case 77u: goto L_08820504; case 78u: goto L_0882050C; case 79u: goto L_08820530; case 80u: goto L_08820540; case 81u: goto L_08820548; case 82u: goto L_08820560; case 83u: goto L_08820578; case 84u: goto L_0882058C; case 85u: goto L_088205A4; case 86u: goto L_088205CC; case 87u: goto L_088205F8; case 88u: goto L_08820630; case 89u: goto L_08820648; case 90u: goto L_08820660; case 91u: goto L_08820670; case 92u: goto L_08820678; case 93u: goto L_0882068C; case 94u: goto L_08820694; case 95u: goto L_088206A4; case 96u: goto L_088206C8; case 97u: goto L_088206E4; case 98u: goto L_0882071C; case 99u: goto L_0882074C; case 100u: goto L_08820774; case 101u: goto L_08820780; case 102u: goto L_08820790; case 103u: goto L_088207A0; case 104u: goto L_088207A8; case 105u: goto L_088207B0; case 106u: goto L_088207D0; case 107u: goto L_088207E4; case 108u: goto L_088207EC; case 109u: goto L_088207FC; case 110u: goto L_08820800; case 111u: goto L_0882080C; case 112u: goto L_0882081C; case 113u: goto L_08820828; case 114u: goto L_0882082C; case 115u: goto L_08820850; case 116u: goto L_0882089C; case 117u: goto L_088208BC; case 118u: goto L_088208CC; case 119u: goto L_088208D4; case 120u: goto L_088208F8; case 121u: goto L_08820908; case 122u: goto L_08820914; case 123u: goto L_0882091C; case 124u: goto L_08820924; case 125u: goto L_08820940; case 126u: goto L_0882094C; case 127u: goto L_0882096C; case 128u: goto L_08820974; case 129u: goto L_08820980; case 130u: goto L_08820990; case 131u: goto L_088209A8; case 132u: goto L_088209BC; case 133u: goto L_088209C8; case 134u: goto L_088209D4; case 135u: goto L_088209D8; case 136u: goto L_088209E4; case 137u: goto L_08820A04; case 138u: goto L_08820A34; case 139u: goto L_08820A3C; case 140u: goto L_08820A60; case 141u: goto L_08820A68; case 142u: goto L_08820A98; case 143u: goto L_08820AB8; case 144u: goto L_08820AD8; case 145u: goto L_08820AE8; case 146u: goto L_08820AF0; case 147u: goto L_08820AF8; case 148u: goto L_08820B00; case 149u: goto L_08820B04; case 150u: goto L_08820B0C; case 151u: goto L_08820B18; case 152u: goto L_08820B34; case 153u: goto L_08820B48; case 154u: goto L_08820B80; case 155u: goto L_08820BBC; case 156u: goto L_08820BC8; case 157u: goto L_08820BD0; case 158u: goto L_08820BD8; case 159u: goto L_08820BF4; case 160u: goto L_08820C00; case 161u: goto L_08820C08; case 162u: goto L_08820C10; case 163u: goto L_08820C18; case 164u: goto L_08820C20; case 165u: goto L_08820C2C; case 166u: goto L_08820C38; case 167u: goto L_08820C44; case 168u: goto L_08820C50; case 169u: goto L_08820C58; case 170u: goto L_08820C60; case 171u: goto L_08820C6C; case 172u: goto L_08820C74; case 173u: goto L_08820C88; case 174u: goto L_08820C94; case 175u: goto L_08820C9C; case 176u: goto L_08820CA4; case 177u: goto L_08820CB0; case 178u: goto L_08820CC8; case 179u: goto L_08820CD0; case 180u: goto L_08820CD8; case 181u: goto L_08820CE8; case 182u: goto L_08820CF8; case 183u: goto L_08820D14; case 184u: goto L_08820D30; case 185u: goto L_08820D38; case 186u: goto L_08820D40; case 187u: goto L_08820D50; case 188u: goto L_08820D58; case 189u: goto L_08820D64; case 190u: goto L_08820D7C; case 191u: goto L_08820D84; case 192u: goto L_08820D8C; case 193u: goto L_08820D90; case 194u: goto L_08820DB0; case 195u: goto L_08820DC4; case 196u: goto L_08820DDC; case 197u: goto L_08820DEC; case 198u: goto L_08820DF4; case 199u: goto L_08820DF8; case 200u: goto L_08820E08; case 201u: goto L_08820E14; case 202u: goto L_08820E20; case 203u: goto L_08820E28; case 204u: goto L_08820E70; case 205u: goto L_08820E90; case 206u: goto L_08820E98; case 207u: goto L_08820EBC; case 208u: goto L_08820ECC; case 209u: goto L_08820ED4; case 210u: goto L_08820ED8; case 211u: goto L_08820EE4; case 212u: goto L_08820EE8; case 213u: goto L_08820EF4; case 214u: goto L_08820F50; case 215u: goto L_08820F5C; case 216u: goto L_08820F78; case 217u: goto L_08820F80; case 218u: goto L_08820FA4; case 219u: goto L_08820FC4; case 220u: goto L_08820FEC; case 221u: goto L_08821030; case 222u: goto L_08821048; case 223u: goto L_08821054; case 224u: goto L_08821074; case 225u: goto L_08821078; case 226u: goto L_08821090; case 227u: goto L_088210A8; case 228u: goto L_088210D0; case 229u: goto L_088210E4; case 230u: goto L_088210F4; case 231u: goto L_0882110C; case 232u: goto L_08821124; case 233u: goto L_0882114C; case 234u: goto L_08821160; case 235u: goto L_08821170; case 236u: goto L_08821184; case 237u: goto L_088211AC; case 238u: goto L_088211D8; case 239u: goto L_08821228; case 240u: goto L_0882126C; case 241u: goto L_088212D0; case 242u: goto L_08821310; case 243u: goto L_08821334; case 244u: goto L_0882134C; case 245u: goto L_08821350; case 246u: goto L_08821360; case 247u: goto L_088213B0; case 248u: goto L_088213C0; case 249u: goto L_0882141C; case 250u: goto L_08821450; case 251u: goto L_08821454; case 252u: goto L_08821460; case 253u: goto L_08821480; case 254u: goto L_088214C8; case 255u: goto L_088214EC; case 256u: goto L_088214F0; case 257u: goto L_088214F8; case 258u: goto L_0882150C; case 259u: goto L_08821514; case 260u: goto L_08821520; case 261u: goto L_0882153C; case 262u: goto L_08821548; case 263u: goto L_08821550; case 264u: goto L_0882155C; case 265u: goto L_0882156C; case 266u: goto L_08821578; case 267u: goto L_08821588; case 268u: goto L_08821590; case 269u: goto L_088215C8; case 270u: goto L_088215F8; case 271u: goto L_08821608; case 272u: goto L_08821620; case 273u: goto L_0882162C; case 274u: goto L_08821648; case 275u: goto L_08821654; case 276u: goto L_0882166C; case 277u: goto L_08821684; case 278u: goto L_0882169C; case 279u: goto L_088216AC; case 280u: goto L_088216BC; case 281u: goto L_088217D4; case 282u: goto L_088217EC; case 283u: goto L_0882186C; case 284u: goto L_08821874; case 285u: goto L_088218A0; case 286u: goto L_088218A8; case 287u: goto L_0882191C; case 288u: goto L_08821968; case 289u: goto L_0882199C; case 290u: goto L_088219CC; case 291u: goto L_088219E4; case 292u: goto L_088219F4; case 293u: goto L_088219FC; case 294u: goto L_08821A04; case 295u: goto L_08821A14; case 296u: goto L_08821A1C; case 297u: goto L_08821A24; case 298u: goto L_08821A40; case 299u: goto L_08821A6C; case 300u: goto L_08821A9C; case 301u: goto L_08821AB4; case 302u: goto L_08821AC4; case 303u: goto L_08821ACC; case 304u: goto L_08821AD4; case 305u: goto L_08821AE4; case 306u: goto L_08821AEC; case 307u: goto L_08821AF4; case 308u: goto L_08821B0C; case 309u: goto L_08821B30; case 310u: goto L_08821B5C; case 311u: goto L_08821B84; case 312u: goto L_08821B9C; case 313u: goto L_08821BB0; case 314u: goto L_08821BD0; case 315u: goto L_08821BD8; case 316u: goto L_08821BEC; case 317u: goto L_08821BF4; case 318u: goto L_08821C58; case 319u: goto L_08821C60; case 320u: goto L_08821C6C; case 321u: goto L_08821C74; case 322u: goto L_08821C8C; case 323u: goto L_08821CF4; case 324u: goto L_08821D00; case 325u: goto L_08821D24; case 326u: goto L_08821D30; case 327u: goto L_08821D54; case 328u: goto L_08821D60; case 329u: goto L_08821D84; case 330u: goto L_08821D90; case 331u: goto L_08821DC8; case 332u: goto L_08821DD0; case 333u: goto L_08821DD8; case 334u: goto L_08821DF0; case 335u: goto L_08821DF8; case 336u: goto L_08821E00; case 337u: goto L_08821E0C; case 338u: goto L_08821E14; case 339u: goto L_08821E1C; case 340u: goto L_08821E5C; case 341u: goto L_08821E64; case 342u: goto L_08821E74; case 343u: goto L_08821E98; case 344u: goto L_08821E9C; case 345u: goto L_08821EC8; case 346u: goto L_08821ECC; case 347u: goto L_08821ED4; case 348u: goto L_08821EE4; case 349u: goto L_08821EF4; case 350u: goto L_08821EFC; case 351u: goto L_08821F1C; case 352u: goto L_08821F58; case 353u: goto L_08821F7C; case 354u: goto L_08821F84; case 355u: goto L_08821F8C; case 356u: goto L_08821F94; case 357u: goto L_08821FAC; case 358u: goto L_08821FB4; case 359u: goto L_08821FC4; case 360u: goto L_08821FE4; case 361u: goto L_08821FE8; case 362u: goto L_08821FF8; case 363u: goto L_08822004; case 364u: goto L_08822010; case 365u: goto L_08822018; case 366u: goto L_08822020; case 367u: goto L_08822028; case 368u: goto L_08822034; case 369u: goto L_0882203C; case 370u: goto L_0882204C; case 371u: goto L_08822068; case 372u: goto L_08822080; case 373u: goto L_08822088; case 374u: goto L_088220A0; case 375u: goto L_0882210C; case 376u: goto L_08822114; case 377u: goto L_08822118; case 378u: goto L_08822130; case 379u: goto L_08822138; case 380u: goto L_0882214C; case 381u: goto L_08822164; case 382u: goto L_08822180; case 383u: goto L_088221A0; case 384u: goto L_088221EC; case 385u: goto L_088221F0; case 386u: goto L_08822208; case 387u: goto L_0882220C; case 388u: goto L_08822228; case 389u: goto L_0882222C; case 390u: goto L_0882223C; case 391u: goto L_08822240; case 392u: goto L_08822248; case 393u: goto L_08822250; case 394u: goto L_08822258; case 395u: goto L_08822260; case 396u: goto L_08822264; case 397u: goto L_0882227C; case 398u: goto L_08822284; case 399u: goto L_08822288; case 400u: goto L_0882229C; case 401u: goto L_088222A4; case 402u: goto L_088222A8; case 403u: goto L_088222BC; case 404u: goto L_088222C4; case 405u: goto L_088222C8; case 406u: goto L_088222E0; case 407u: goto L_088222E8; case 408u: goto L_088222EC; case 409u: goto L_08822300; case 410u: goto L_08822308; case 411u: goto L_0882230C; case 412u: goto L_08822318; case 413u: goto L_08822338; case 414u: goto L_08822340; case 415u: goto L_08822348; case 416u: goto L_08822350; case 417u: goto L_08822358; case 418u: goto L_08822364; case 419u: goto L_08822384; case 420u: goto L_08822390; case 421u: goto L_08822398; case 422u: goto L_088223A4; case 423u: goto L_088223AC; case 424u: goto L_088223C0; case 425u: goto L_088223C8; case 426u: goto L_088223CC; case 427u: goto L_088223E0; case 428u: goto L_088223E8; case 429u: goto L_088223EC; case 430u: goto L_08822400; case 431u: goto L_08822408; case 432u: goto L_0882240C; case 433u: goto L_08822420; case 434u: goto L_08822428; case 435u: goto L_0882242C; case 436u: goto L_08822440; case 437u: goto L_08822448; case 438u: goto L_0882244C; case 439u: goto L_08822484; case 440u: goto L_088224DC; case 441u: goto L_088224F8; case 442u: goto L_08822500; case 443u: goto L_08822508; case 444u: goto L_08822520; case 445u: goto L_08822538; case 446u: goto L_08822548; case 447u: goto L_08822564; case 448u: goto L_08822574; case 449u: goto L_08822584; case 450u: goto L_08822594; case 451u: goto L_088225A4; case 452u: goto L_088225AC; case 453u: goto L_088225B0; case 454u: goto L_088225BC; case 455u: goto L_088225C8; case 456u: goto L_088225D4; case 457u: goto L_088225E0; case 458u: goto L_088225E8; case 459u: goto L_088225EC; case 460u: goto L_08822600; case 461u: goto L_08822608; case 462u: goto L_08822614; case 463u: goto L_0882261C; case 464u: goto L_08822620; case 465u: goto L_08822634; case 466u: goto L_08822638; case 467u: goto L_08822640; case 468u: goto L_0882264C; case 469u: goto L_08822664; case 470u: goto L_08822670; case 471u: goto L_08822698; case 472u: goto L_088226B0; case 473u: goto L_088226D4; case 474u: goto L_088226E8; case 475u: goto L_0882271C; case 476u: goto L_08822724; case 477u: goto L_0882272C; case 478u: goto L_088227E4; case 479u: goto L_08822804; case 480u: goto L_0882280C; case 481u: goto L_08822880; case 482u: goto L_088228A8; case 483u: goto L_088228AC; case 484u: goto L_088228EC; case 485u: goto L_08822934; case 486u: goto L_08822938; case 487u: goto L_0882298C; case 488u: goto L_08822994; case 489u: goto L_088229B0; case 490u: goto L_08822A2C; case 491u: goto L_08822A54; case 492u: goto L_08822A80; case 493u: goto L_08822AC8; case 494u: goto L_08822AF0; case 495u: goto L_08822B1C; case 496u: goto L_08822B24; case 497u: goto L_08822B38; case 498u: goto L_08822B70; case 499u: goto L_08822B84; case 500u: goto L_08822BC0; case 501u: goto L_08822BFC; case 502u: goto L_08822C0C; case 503u: goto L_08822C14; case 504u: goto L_08822C1C; case 505u: goto L_08822C34; case 506u: goto L_08822C4C; case 507u: goto L_08822C5C; case 508u: goto L_08822C64; case 509u: goto L_08822C74; case 510u: goto L_08822C84; case 511u: goto L_08822C90; case 512u: goto L_08822C98; case 513u: goto L_08822CA0; case 514u: goto L_08822CA4; case 515u: goto L_08822CAC; case 516u: goto L_08822CB4; case 517u: goto L_08822CCC; case 518u: goto L_08822CE0; case 519u: goto L_08822CE8; case 520u: goto L_08822D0C; case 521u: goto L_08822D20; case 522u: goto L_08822D28; case 523u: goto L_08822D2C; case 524u: goto L_08822D34; case 525u: goto L_08822D40; case 526u: goto L_08822D48; case 527u: goto L_08822D6C; case 528u: goto L_08822D80; case 529u: goto L_08822D88; case 530u: goto L_08822D90; case 531u: goto L_08822D98; case 532u: goto L_08822DA0; case 533u: goto L_08822DA8; case 534u: goto L_08822DB0; case 535u: goto L_08822DBC; case 536u: goto L_08822DE0; case 537u: goto L_08822DF4; case 538u: goto L_08822DFC; case 539u: goto L_08822E04; case 540u: goto L_08822E0C; case 541u: goto L_08822E14; case 542u: goto L_08822E20; case 543u: goto L_08822E2C; case 544u: goto L_08822E34; case 545u: goto L_08822E3C; case 546u: goto L_08822E50; case 547u: goto L_08822E58; case 548u: goto L_08822E60; case 549u: goto L_08822E6C; case 550u: goto L_08822E74; case 551u: goto L_08822E7C; case 552u: goto L_08822EA0; case 553u: goto L_08822EB4; case 554u: goto L_08822EC8; case 555u: goto L_08822EE0; case 556u: goto L_08822EF0; case 557u: goto L_08822F14; case 558u: goto L_08822F28; case 559u: goto L_08822F3C; case 560u: goto L_08822F48; case 561u: goto L_08822F60; case 562u: goto L_08822F88; case 563u: goto L_08822F9C; case 564u: goto L_08822FA4; case 565u: goto L_08822FC0; case 566u: goto L_08822FC8; case 567u: goto L_08822FD0; case 568u: goto L_08822FE8; case 569u: goto L_08823000; case 570u: goto L_08823028; case 571u: goto L_0882304C; case 572u: goto L_08823060; case 573u: goto L_08823068; case 574u: goto L_0882308C; case 575u: goto L_088230A0; case 576u: goto L_088230BC; case 577u: goto L_08823100; case 578u: goto L_0882310C; case 579u: goto L_08823130; case 580u: goto L_0882313C; case 581u: goto L_0882315C; case 582u: goto L_08823164; case 583u: goto L_08823168; case 584u: goto L_08823180; case 585u: goto L_08823188; case 586u: goto L_088231A0; case 587u: goto L_088231B8; case 588u: goto L_088231C0; case 589u: goto L_088231C8; case 590u: goto L_088231D4; case 591u: goto L_088231D8; case 592u: goto L_08823210; case 593u: goto L_08823238; case 594u: goto L_08823240; case 595u: goto L_0882326C; case 596u: goto L_08823274; case 597u: goto L_08823280; case 598u: goto L_08823288; case 599u: goto L_08823290; case 600u: goto L_08823298; case 601u: goto L_088232A0; case 602u: goto L_088232A8; case 603u: goto L_088232B8; case 604u: goto L_088232E8; case 605u: goto L_088232F4; case 606u: goto L_08823300; case 607u: goto L_08823308; case 608u: goto L_08823310; case 609u: goto L_08823330; case 610u: goto L_08823338; case 611u: goto L_08823350; case 612u: goto L_08823378; case 613u: goto L_08823384; case 614u: goto L_0882338C; case 615u: goto L_08823394; case 616u: goto L_0882339C; case 617u: goto L_088233A4; case 618u: goto L_088233B4; case 619u: goto L_088233BC; case 620u: goto L_088233D4; case 621u: goto L_088233E0; case 622u: goto L_088233E8; case 623u: goto L_088233F0; case 624u: goto L_088233F8; case 625u: goto L_08823414; case 626u: goto L_0882342C; case 627u: goto L_0882343C; case 628u: goto L_08823444; case 629u: goto L_08823464; case 630u: goto L_0882346C; case 631u: goto L_08823474; case 632u: goto L_0882347C; case 633u: goto L_0882348C; case 634u: goto L_08823490; case 635u: goto L_088234BC; case 636u: goto L_0882368C; case 637u: goto L_08823698; case 638u: goto L_088236B8; case 639u: goto L_08823710; case 640u: goto L_0882371C; case 641u: goto L_0882372C; case 642u: goto L_08823738; case 643u: goto L_08823754; case 644u: goto L_0882375C; case 645u: goto L_08823764; case 646u: goto L_08823778; case 647u: goto L_0882377C; case 648u: goto L_08823794; case 649u: goto L_088237B0; case 650u: goto L_088237C4; case 651u: goto L_088237D0; case 652u: goto L_088237DC; case 653u: goto L_088237E4; case 654u: goto L_088237F8; case 655u: goto L_08823800; case 656u: goto L_08823824; case 657u: goto L_08823830; case 658u: goto L_08823838; case 659u: goto L_0882383C; case 660u: goto L_0882384C; case 661u: goto L_0882385C; case 662u: goto L_08823878; case 663u: goto L_08823884; case 664u: goto L_088238A8; case 665u: goto L_088238B8; case 666u: goto L_0882393C; case 667u: goto L_08823948; case 668u: goto L_08823974; case 669u: goto L_0882397C; case 670u: goto L_0882398C; case 671u: goto L_08823994; case 672u: goto L_0882399C; case 673u: goto L_088239A4; case 674u: goto L_088239AC; case 675u: goto L_088239B4; case 676u: goto L_088239BC; case 677u: goto L_088239C0; case 678u: goto L_088239DC; case 679u: goto L_088239F0; case 680u: goto L_08823A2C; case 681u: goto L_08823A48; case 682u: goto L_08823A64; case 683u: goto L_08823A70; case 684u: goto L_08823A78; case 685u: goto L_08823A7C; case 686u: goto L_08823A84; case 687u: goto L_08823A8C; case 688u: goto L_08823A98; case 689u: goto L_08823AA8; case 690u: goto L_08823AB4; case 691u: goto L_08823ABC; case 692u: goto L_08823AC4; case 693u: goto L_08823AD8; case 694u: goto L_08823AE4; case 695u: goto L_08823AE8; case 696u: goto L_08823AF0; case 697u: goto L_08823AF8; case 698u: goto L_08823B0C; case 699u: goto L_08823B2C; case 700u: goto L_08823B54; case 701u: goto L_08823B60; case 702u: goto L_08823B68; case 703u: goto L_08823B70; case 704u: goto L_08823B84; case 705u: goto L_08823B90; case 706u: goto L_08823B9C; case 707u: goto L_08823BA4; case 708u: goto L_08823BAC; case 709u: goto L_08823BB4; case 710u: goto L_08823BBC; case 711u: goto L_08823BC0; case 712u: goto L_08823BC8; case 713u: goto L_08823BD0; case 714u: goto L_08823BD8; case 715u: goto L_08823BE0; case 716u: goto L_08823BEC; case 717u: goto L_08823BF4; case 718u: goto L_08823BFC; case 719u: goto L_08823C04; case 720u: goto L_08823C18; case 721u: goto L_08823C60; case 722u: goto L_08823C74; case 723u: goto L_08823C84; case 724u: goto L_08823C88; case 725u: goto L_08823C90; case 726u: goto L_08823C98; case 727u: goto L_08823C9C; case 728u: goto L_08823CA4; case 729u: goto L_08823CAC; case 730u: goto L_08823CB0; case 731u: goto L_08823CB8; case 732u: goto L_08823CC0; case 733u: goto L_08823CC4; case 734u: goto L_08823D88; case 735u: goto L_08823D90; case 736u: goto L_08823DB4; case 737u: goto L_08823DCC; case 738u: goto L_08823DF0; case 739u: goto L_08823DF4; case 740u: goto L_08823E00; case 741u: goto L_08823E2C; case 742u: goto L_08823E80; case 743u: goto L_08823E94; case 744u: goto L_08823EA8; case 745u: goto L_08823EB0; case 746u: goto L_08823EC4; case 747u: goto L_08823EDC; case 748u: goto L_08823EF0; case 749u: goto L_08823F08; case 750u: goto L_08823F64; case 751u: goto L_08823FCC; case 752u: goto L_08823FD8; default: if (local_transfers == 0u) rt.unsupported(ctx.pc, 0u, "invalid internal function entry"); else ctx.pc = local_pc; return; } } L_08820000: ctx.gpr[2] = (0u | 0u); goto L_08820004; L_08820004: ctx.gpr[2] = (0u | 1u); goto L_08820008; L_08820008: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_0882001C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-80)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[8] | 0u); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(60), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(64), ctx.gpr[19]); ctx.gpr[18] = (ctx.gpr[5] | 0u); ctx.gpr[19] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[7] & 255u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[8] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[5] << 6u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), ctx.gpr[17]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[17] = (ctx.gpr[6] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(68), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(72), ctx.gpr[31]); ctx.gpr[31] = (0x08820064u); ctx.gpr[5] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 348u, 0x0881E25Cu>(ctx, &aot_mem) && ctx.pc == 0x08820064u) goto L_08820064; return; L_08820064: ctx.gpr[20] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (0u | 4u); if (branch_taken) { goto L_08820078; } goto L_08820070; } L_08820070: { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); if (branch_taken) { goto L_088200B8; } goto L_08820078; } L_08820078: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(12))); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088200B8; } goto L_08820084; } L_08820084: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(12))); ctx.gpr[5] = (ctx.gpr[18] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[31] = (0x088200B4u); ctx.gpr[5] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 658u, 0x08A6734Cu>(ctx, &aot_mem) && ctx.pc == 0x088200B4u) goto L_088200B4; return; L_088200B4: ctx.gpr[4] = (ctx.gpr[2] | 0u); goto L_088200B8; L_088200B8: ctx.gpr[5] = (ctx.gpr[4] & 255u); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x088200C8u); ctx.gpr[6] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 380u, 0x0881E430u>(ctx, &aot_mem) && ctx.pc == 0x088200C8u) goto L_088200C8; return; L_088200C8: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(52))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(60))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(64))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(68))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(72))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(80)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088200E8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); ctx.gpr[9] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[20]); ctx.gpr[20] = (ctx.gpr[6] & 255u); ctx.gpr[6] = (ctx.gpr[4] + static_cast(28)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (aot_mem.aot_load8(ctx.gpr[6] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[16] = (aot_mem.aot_load8(ctx.gpr[6] + static_cast(1))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[9] + static_cast(12))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); ctx.gpr[19] = (ctx.gpr[7] & 255u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[18] = (ctx.gpr[8] & 255u); if (branch_taken) { goto L_08820170; } goto L_0882012C; } L_0882012C: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2228))); ctx.gpr[7] = (0u | 17u); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[7]; // nop if (branch_taken) { goto L_08820170; } goto L_0882013C; } L_0882013C: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2196))); { const bool branch_taken = ctx.gpr[6] != 0u; // nop if (branch_taken) { goto L_08820158; } goto L_08820148; } L_08820148: ctx.gpr[31] = (0x08820150u); ctx.gpr[4] = (ctx.gpr[5] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820150u) goto L_08820150; return; L_08820150: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); if (branch_taken) { goto L_08820170; } goto L_08820158; } L_08820158: { const bool branch_taken = ctx.gpr[18] == 0u; ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); if (branch_taken) { goto L_08820184; } goto L_08820160; } L_08820160: { const bool branch_taken = ctx.gpr[19] != ctx.gpr[17]; // nop if (branch_taken) { goto L_08820184; } goto L_08820168; } L_08820168: { const bool branch_taken = 0u == 0u; ctx.gpr[19] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_08820184; } goto L_08820170; } L_08820170: { const bool branch_taken = ctx.gpr[19] != ctx.gpr[16]; ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); if (branch_taken) { goto L_08820184; } goto L_08820178; } L_08820178: { const bool branch_taken = ctx.gpr[20] == ctx.gpr[17]; // nop if (branch_taken) { goto L_08820184; } goto L_08820180; } L_08820180: ctx.gpr[19] = (ctx.gpr[17] | 0u); goto L_08820184; L_08820184: ctx.gpr[6] = (ctx.gpr[19] << 6u); ctx.gpr[5] = (ctx.gpr[5] + ctx.gpr[6]); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[5] + static_cast(44)))))); ctx.gpr[5] = (ctx.gpr[5] & 32u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088201AC; } goto L_088201A4; } L_088201A4: ctx.gpr[4] = (ctx.gpr[4] + static_cast(28)); ctx.gpr[19] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(5))); goto L_088201AC; L_088201AC: ctx.gpr[2] = (ctx.gpr[19] | 0u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088201D0: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[19]); ctx.gpr[19] = (2236u << 16u); ctx.gpr[19] = (ctx.gpr[19] + static_cast(32304)); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(2048))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[18]); ctx.gpr[18] = (ctx.gpr[4] | 0u); ctx.gpr[17] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[7] != 0u; ctx.gpr[16] = (ctx.gpr[6] | 0u); if (branch_taken) { goto L_08820218; } goto L_08820204; } L_08820204: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(12))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(12))); goto L_08820220; } goto L_08820210; L_08820210: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_0882027C; } goto L_08820218; } L_08820218: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820220; } L_08820220: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882025C; } goto L_0882023C; } L_0882023C: ctx.gpr[31] = (0x08820244u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(12))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820244u) goto L_08820244; return; L_08820244: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_0882025C; } goto L_0882024C; } L_0882024C: ctx.gpr[31] = (0x08820254u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820254u) goto L_08820254; return; L_08820254: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08820274; } goto L_0882025C; } L_0882025C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088202BC; } goto L_08820274; } L_08820274: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_0882027C; } L_0882027C: ctx.gpr[31] = (0x08820284u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820284u) goto L_08820284; return; L_08820284: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088202B4; } goto L_0882028C; } L_0882028C: ctx.gpr[4] = (ctx.gpr[17] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[4] = (15395u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 55050u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[12] + ctx.fpr[13]; { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[12])); if (branch_taken) { goto L_088202BC; } goto L_088202B4; } L_088202B4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_088202BC; } L_088202BC: ctx.gpr[4] = (static_cast(ctx.gpr[16]) < 3 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[16]) < 4 ? 1u : 0u); if (branch_taken) { goto L_08820300; } goto L_088202C8; } L_088202C8: { const bool branch_taken = static_cast(ctx.gpr[16]) <= 0; ctx.gpr[4] = (static_cast(ctx.gpr[16]) < 2 ? 1u : 0u); if (branch_taken) { goto L_08820368; } goto L_088202D0; } L_088202D0: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08820328; } goto L_088202D8; } L_088202D8: ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[5] = (15692u << 16u); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[5] = (ctx.gpr[5] | 52429u); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[31] = (0x088202F8u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0133_entry, 133u, 572u, 0x08A1BC64u>(ctx, &aot_mem) && ctx.pc == 0x088202F8u) goto L_088202F8; return; L_088202F8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820300; } L_08820300: { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[4] = (static_cast(ctx.gpr[16]) < 5 ? 1u : 0u); if (branch_taken) { goto L_08820350; } goto L_08820308; } L_08820308: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820310; } L_08820310: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820320u); ctx.gpr[6] = (ctx.gpr[29] | 0u); goto L_08821A40; L_08820320: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820328; } L_08820328: ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[5] = (15897u << 16u); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[5] = (ctx.gpr[5] | 39322u); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[31] = (0x08820348u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0133_entry, 133u, 572u, 0x08A1BC64u>(ctx, &aot_mem) && ctx.pc == 0x08820348u) goto L_08820348; return; L_08820348: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820350; } L_08820350: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820360u); ctx.gpr[6] = (ctx.gpr[29] | 0u); goto L_08821968; L_08820360: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820368; } goto L_08820368; } L_08820368: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08820384: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); ctx.gpr[19] = (ctx.gpr[6] & 255u); ctx.gpr[17] = (ctx.gpr[5] | 0u); ctx.gpr[18] = (ctx.gpr[9] | 0u); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[7] = (ctx.gpr[7] & 255u); ctx.gpr[8] = (ctx.gpr[8] & 255u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[31]); ctx.gpr[31] = (0x088203C8u); ctx.gpr[6] = (ctx.gpr[19] | 0u); goto L_088200E8; L_088203C8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(28)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[20] = (ctx.gpr[2] | 0u); if (ctx.gpr[20] != ctx.gpr[4]) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); goto L_08820458; } goto L_088203E0; L_088203E0: ctx.gpr[31] = (0x088203E8u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x088203E8u) goto L_088203E8; return; L_088203E8: if (ctx.gpr[2] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); goto L_08820458; } goto L_088203F0; L_088203F0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(2196))); ctx.gpr[5] = (0u | 8u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[5] = (0u | 10u); if (branch_taken) { goto L_08820454; } goto L_08820400; } L_08820400: { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[5] = (0u | 21u); if (branch_taken) { goto L_08820454; } goto L_08820408; } L_08820408: { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[5] = (0u | 22u); if (branch_taken) { goto L_08820454; } goto L_08820410; } L_08820410: if (ctx.gpr[4] == ctx.gpr[5]) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); goto L_08820458; } goto L_08820418; L_08820418: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(2228))); ctx.gpr[5] = (0u | 17u); if (ctx.gpr[4] != ctx.gpr[5]) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); goto L_08820458; } goto L_08820428; L_08820428: ctx.gpr[31] = (0x08820430u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 282u, 0x0890905Cu>(ctx, &aot_mem) && ctx.pc == 0x08820430u) goto L_08820430; return; L_08820430: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[16] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08820454u); ctx.gpr[7] = (0u | 0u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08820454u) goto L_08820454; return; L_08820454: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); goto L_08820458; L_08820458: ctx.gpr[21] = (ctx.gpr[19] << 6u); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[20] << 6u); ctx.gpr[21] = (ctx.gpr[22] + ctx.gpr[21]); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[21] + static_cast(42)))))); ctx.gpr[22] = (ctx.gpr[22] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[5] & 8u); ctx.gpr[5] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[6] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[5] = (ctx.gpr[4] & 2048u); if (branch_taken) { goto L_088204FC; } goto L_08820488; } L_08820488: ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[22] + static_cast(42)))))); ctx.gpr[6] = (ctx.gpr[6] & 8u); ctx.gpr[6] = (0u < ctx.gpr[6] ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); { const bool branch_taken = ctx.gpr[6] != 0u; // nop if (branch_taken) { goto L_088204FC; } goto L_088204A0; } L_088204A0: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[6] = (ctx.gpr[6] & 1024u); ctx.gpr[6] = (0u < ctx.gpr[6] ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_088204FC; } goto L_088204B8; } L_088204B8: { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088204E4; } goto L_088204C0; } L_088204C0: { const bool branch_taken = ctx.gpr[18] != 0u; // nop if (branch_taken) { goto L_088204E4; } goto L_088204C8; } L_088204C8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x088204D8u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 583u, 0x0881F474u>(ctx, &aot_mem) && ctx.pc == 0x088204D8u) goto L_088204D8; return; L_088204D8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); { const bool branch_taken = 0u == 0u; ctx.gpr[5] = (ctx.gpr[4] & 2048u); if (branch_taken) { goto L_088204FC; } goto L_088204E4; } L_088204E4: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x088204F4u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 583u, 0x0881F474u>(ctx, &aot_mem) && ctx.pc == 0x088204F4u) goto L_088204F4; return; L_088204F4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[4] & 2048u); goto L_088204FC; L_088204FC: { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_08820540; } goto L_08820504; } L_08820504: { const bool branch_taken = ctx.gpr[18] != 0u; // nop if (branch_taken) { goto L_08820540; } goto L_0882050C; } L_0882050C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[16] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08820530u); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08820530u) goto L_08820530; return; L_08820530: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (0u + static_cast(-2049)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(8), ctx.gpr[4]); goto L_08820540; L_08820540: { const bool branch_taken = ctx.gpr[19] == ctx.gpr[20]; // nop if (branch_taken) { goto L_0882058C; } goto L_08820548; } L_08820548: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[22] + static_cast(44)))))); ctx.gpr[5] = (ctx.gpr[5] & 16u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_08820578; } goto L_08820560; } L_08820560: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[21] + static_cast(44)))))); ctx.gpr[5] = (ctx.gpr[5] & 16u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] != 0u; // nop if (branch_taken) { goto L_0882058C; } goto L_08820578; } L_08820578: ctx.gpr[5] = (65506u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-1)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(8), ctx.gpr[4]); if (branch_taken) { goto L_088205CC; } goto L_0882058C; } L_0882058C: ctx.gpr[5] = (30u << 16u); ctx.gpr[6] = (ctx.gpr[4] & ctx.gpr[5]); ctx.gpr[6] = (ctx.gpr[6] >> 17u); ctx.gpr[6] = (static_cast(ctx.gpr[6]) < 15 ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_088205CC; } goto L_088205A4; } L_088205A4: ctx.gpr[5] = (ctx.gpr[4] & ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] >> 17u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(1)); ctx.gpr[6] = (65506u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-1)); ctx.gpr[5] = (ctx.gpr[5] & 15u); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[6]); ctx.gpr[5] = (ctx.gpr[5] << 17u); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(8), ctx.gpr[4]); goto L_088205CC; L_088205CC: ctx.gpr[2] = (ctx.gpr[20] | 0u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088205F8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-112)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(92), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), ctx.gpr[18]); ctx.gpr[8] = (0u | 5u); ctx.gpr[18] = (0u | 1u); ctx.gpr[17] = (ctx.gpr[4] | 0u); ctx.gpr[16] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(100), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(104), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[7] == ctx.gpr[8]; ctx.gpr[19] = (1u << 16u); if (branch_taken) { goto L_08820660; } goto L_08820630; } L_08820630: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08820660; } goto L_08820648; } L_08820648: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 512u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08820694; } goto L_08820660; } L_08820660: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[19]); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882068C; } goto L_08820670; } L_08820670: ctx.gpr[31] = (0x08820678u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 454u, 0x08909B60u>(ctx, &aot_mem) && ctx.pc == 0x08820678u) goto L_08820678; return; L_08820678: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[5] = (65535u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-1)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); goto L_0882068C; L_0882068C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (ctx.gpr[18] | 0u); if (branch_taken) { goto L_0882082C; } goto L_08820694; } L_08820694: ctx.gpr[5] = (ctx.gpr[7] & 1u); ctx.fpr[22] = std::bit_cast(0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (ctx.gpr[16] + static_cast(48)); if (branch_taken) { goto L_088206C8; } goto L_088206A4; } L_088206A4: { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088206E4; } goto L_088206C8; } L_088206C8: { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } goto L_088206E4; L_088206E4: aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[22])); { const std::uint32_t vfpu_address = ctx.gpr[29] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_value[4]{}; vfpu_value[0u] = 1.0f; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 1u, 1u, 3u>(); ctx.execute_vfpu_vcmp_ct<28u, 32u, 1u, 3u>(); { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<28u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = 1.0f / std::sqrt(vfpu_s[i]); ctx.write_vfpu_vector_with_destination_prefix_ct<28u, 1u>(vfpu_d); } ctx.execute_vfpu_vscl_ct<1u, 1u, 28u, 3u>(); ctx.execute_vfpu_vcmov_ct<1u, 0u, 3u, 0u, false>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<1u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[22])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_0882074C; } goto L_0882071C; } L_0882071C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<0u>(ctx.gpr[4]); { const float vfpu_constant = std::bit_cast(0x3FC90FDBu); const float vfpu_value[4]{vfpu_constant, vfpu_constant, vfpu_constant, vfpu_constant}; ctx.write_vfpu_vector_with_destination_prefix_ct<32u, 1u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] < -1.0f ? -1.0f : (vfpu_s[i] > 1.0f ? 1.0f : vfpu_s[i]); ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = std::asin(vfpu_s[i]) * 0.63661977236758134308f; ctx.write_vfpu_vector_with_destination_prefix_ct<64u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<64u, 1u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<32u, 1u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] * vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<32u, 1u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<64u, 1u>(vfpu_d); } ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<64u>()); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); { const bool branch_taken = 0u == 0u; ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[20]) ^ 0x80000000u); if (branch_taken) { goto L_08820774; } goto L_0882074C; } L_0882074C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<0u>(ctx.gpr[4]); { const float vfpu_constant = std::bit_cast(0x3FC90FDBu); const float vfpu_value[4]{vfpu_constant, vfpu_constant, vfpu_constant, vfpu_constant}; ctx.write_vfpu_vector_with_destination_prefix_ct<32u, 1u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] < -1.0f ? -1.0f : (vfpu_s[i] > 1.0f ? 1.0f : vfpu_s[i]); ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = std::asin(vfpu_s[i]) * 0.63661977236758134308f; ctx.write_vfpu_vector_with_destination_prefix_ct<64u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<64u, 1u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<32u, 1u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] * vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<32u, 1u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<0u, 1u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<64u, 1u>(vfpu_d); } ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<64u>()); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); goto L_08820774; L_08820774: ctx.gpr[4] = (ctx.gpr[7] & 2u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088207A0; } goto L_08820780; } L_08820780: aot_mem.aot_store32(ctx.gpr[16] + static_cast(2256), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[16] + static_cast(2260), std::bit_cast(ctx.fpr[20])); ctx.gpr[31] = (0x08820790u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 454u, 0x08909B60u>(ctx, &aot_mem) && ctx.pc == 0x08820790u) goto L_08820790; return; L_08820790: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[19]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); if (branch_taken) { goto L_08820828; } goto L_088207A0; } L_088207A0: ctx.gpr[31] = (0x088207A8u); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(2256))); if (rt.invoke_chained_direct<&recomp_unit_0162_entry, 162u, 580u, 0x08A8F0B4u>(ctx, &aot_mem) && ctx.pc == 0x088207A8u) goto L_088207A8; return; L_088207A8: ctx.gpr[31] = (0x088207B0u); ctx.fpr[12] = ctx.fpr[20] - ctx.fpr[0]; if (rt.invoke_chained_direct<&recomp_unit_0162_entry, 162u, 580u, 0x08A8F0B4u>(ctx, &aot_mem) && ctx.pc == 0x088207B0u) goto L_088207B0; return; L_088207B0: ctx.gpr[4] = (15681u << 16u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[28] + static_cast(7676))); ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[22])); ctx.gpr[4] = (ctx.gpr[4] | 1275u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const bool branch_taken = !ctx.fpu_condition(); { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[14]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } if (branch_taken) { goto L_088207EC; } goto L_088207D0; } L_088207D0: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[12])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08820800; } goto L_088207E4; } L_088207E4: { const bool branch_taken = 0u == 0u; ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); if (branch_taken) { goto L_08820800; } goto L_088207EC; } L_088207EC: ctx.set_fpu_condition((ctx.fpr[13] <= ctx.fpr[12])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08820800; } goto L_088207FC; } L_088207FC: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08820800; L_08820800: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(2256))); ctx.gpr[31] = (0x0882080Cu); ctx.fpr[12] = ctx.fpr[12] + ctx.fpr[13]; if (rt.invoke_chained_direct<&recomp_unit_0162_entry, 162u, 580u, 0x08A8F0B4u>(ctx, &aot_mem) && ctx.pc == 0x0882080Cu) goto L_0882080C; return; L_0882080C: aot_mem.aot_store32(ctx.gpr[16] + static_cast(2256), std::bit_cast(ctx.fpr[0])); aot_mem.aot_store32(ctx.gpr[16] + static_cast(2260), std::bit_cast(ctx.fpr[20])); ctx.gpr[31] = (0x0882081Cu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 454u, 0x08909B60u>(ctx, &aot_mem) && ctx.pc == 0x0882081Cu) goto L_0882081C; return; L_0882081C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); goto L_08820828; L_08820828: ctx.gpr[2] = (ctx.gpr[18] | 0u); goto L_0882082C; L_0882082C: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(80))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(84))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(88))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(92))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(100))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(112)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08820850: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[21]); ctx.gpr[21] = (ctx.gpr[8] | 0u); ctx.gpr[18] = (ctx.gpr[6] | 0u); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[17] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[30]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[31]); ctx.gpr[31] = (0x0882089Cu); ctx.gpr[19] = (ctx.gpr[7] & 255u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 664u, 0x0881FA54u>(ctx, &aot_mem) && ctx.pc == 0x0882089Cu) goto L_0882089C; return; L_0882089C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(8))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[5] << 6u); ctx.gpr[20] = (ctx.gpr[20] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x088208BCu); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 348u, 0x0881E25Cu>(ctx, &aot_mem) && ctx.pc == 0x088208BCu) goto L_088208BC; return; L_088208BC: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x088208CCu); ctx.gpr[6] = (ctx.gpr[18] | 0u); goto L_08820B80; L_088208CC: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_0882091C; } goto L_088208D4; } L_088208D4: aot_mem.aot_store32(ctx.gpr[16] + static_cast(16), ctx.gpr[21]); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[17] + static_cast(1929)))))); ctx.gpr[5] = (ctx.gpr[4] << 5u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + static_cast(1396)); ctx.gpr[31] = (0x088208F8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); if (rt.invoke_chained_direct<&recomp_unit_0198_entry, 198u, 733u, 0x08B1FD70u>(ctx, &aot_mem) && ctx.pc == 0x088208F8u) goto L_088208F8; return; L_088208F8: ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(80))); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[18] + static_cast(0))); ctx.gpr[31] = (0x08820908u); ctx.gpr[4] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0026_entry, 26u, 206u, 0x0886D4BCu>(ctx, &aot_mem) && ctx.pc == 0x08820908u) goto L_08820908; return; L_08820908: ctx.gpr[22] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[22] != 0u; ctx.fpr[22] = std::bit_cast(0u); if (branch_taken) { goto L_08820924; } goto L_08820914; } L_08820914: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_0882096C; } goto L_0882091C; } L_0882091C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08820B48; } goto L_08820924; } L_08820924: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(8))); ctx.gpr[5] = (8u << 16u); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882096C; } goto L_08820940; } L_08820940: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x0882094Cu); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 719u, 0x0881FEE4u>(ctx, &aot_mem) && ctx.pc == 0x0882094Cu) goto L_0882094C; return; L_0882094C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(8))); ctx.gpr[5] = (65528u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-1)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[22] + static_cast(8), ctx.gpr[4]); ctx.gpr[4] = (50298u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[22] + static_cast(36), std::bit_cast(ctx.fpr[12])); goto L_0882096C; L_0882096C: ctx.gpr[31] = (0x08820974u); ctx.gpr[4] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0018_entry, 18u, 271u, 0x0884D5D4u>(ctx, &aot_mem) && ctx.pc == 0x08820974u) goto L_08820974; return; L_08820974: ctx.gpr[30] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[30] == 0u; ctx.gpr[23] = (65528u << 16u); if (branch_taken) { goto L_088209E4; } goto L_08820980; } L_08820980: ctx.gpr[4] = (50298u << 16u); ctx.gpr[23] = (ctx.gpr[23] + static_cast(-1)); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); ctx.gpr[22] = (8u << 16u); goto L_08820990; L_08820990: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[30] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[4] & 16u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088209D8; } goto L_088209A8; } L_088209A8: ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[22]); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088209D4; } goto L_088209BC; } L_088209BC: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088209C8u); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 719u, 0x0881FEE4u>(ctx, &aot_mem) && ctx.pc == 0x088209C8u) goto L_088209C8; return; L_088209C8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[30] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[30] + static_cast(8), ctx.gpr[4]); goto L_088209D4; L_088209D4: aot_mem.aot_store32(ctx.gpr[30] + static_cast(36), std::bit_cast(ctx.fpr[20])); goto L_088209D8; L_088209D8: ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[30] + static_cast(0))); { const bool branch_taken = ctx.gpr[30] != 0u; // nop if (branch_taken) { goto L_08820990; } goto L_088209E4; } L_088209E4: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[18] + static_cast(2))); ctx.gpr[7] = (aot_mem.aot_load16(ctx.gpr[18] + static_cast(0))); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[20] + static_cast(40))); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08820A04u); ctx.fpr[12] = static_cast(static_cast(std::bit_cast(ctx.fpr[12]))); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 163u, 0x089088F4u>(ctx, &aot_mem) && ctx.pc == 0x08820A04u) goto L_08820A04; return; L_08820A04: aot_mem.aot_store32(ctx.gpr[16] + static_cast(4), ctx.gpr[2]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(8))); ctx.gpr[5] = (1u << 16u); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[2] + static_cast(8), ctx.gpr[4]); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 16u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); if (ctx.gpr[4] == 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); goto L_08820A68; } goto L_08820A34; L_08820A34: if (ctx.gpr[19] == 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); goto L_08820A68; } goto L_08820A3C; L_08820A3C: aot_mem.aot_store32(ctx.gpr[18] + static_cast(36), std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[4] = (16256u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(16), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[31] = (0x08820A60u); ctx.gpr[5] = (ctx.gpr[17] | 0u); goto L_088211AC; L_08820A60: ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); goto L_08820A68; L_08820A68: ctx.gpr[5] = (0u + static_cast(-9)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[6] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[5] | 4u); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); ctx.gpr[5] = (2190u << 16u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[31] = (0x08820A98u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(15036)); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 95u, 0x088905F0u>(ctx, &aot_mem) && ctx.pc == 0x08820A98u) goto L_08820A98; return; L_08820A98: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (0u + static_cast(-3)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[6] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); ctx.gpr[31] = (0x08820AB8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 73u, 0x08890474u>(ctx, &aot_mem) && ctx.pc == 0x08820AB8u) goto L_08820AB8; return; L_08820AB8: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(8))); ctx.gpr[6] = (ctx.gpr[6] | 1u); aot_mem.aot_store32(ctx.gpr[5] + static_cast(8), ctx.gpr[6]); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[31] = (0x08820AD8u); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 558u, 0x0881F1B0u>(ctx, &aot_mem) && ctx.pc == 0x08820AD8u) goto L_08820AD8; return; L_08820AD8: aot_mem.aot_store32(ctx.gpr[18] + static_cast(44), std::bit_cast(ctx.fpr[0])); ctx.gpr[18] = (0u | 1u); ctx.gpr[31] = (0x08820AE8u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820AE8u) goto L_08820AE8; return; L_08820AE8: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08820B04; } goto L_08820AF0; } L_08820AF0: ctx.gpr[31] = (0x08820AF8u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0081_entry, 81u, 80u, 0x0894854Cu>(ctx, &aot_mem) && ctx.pc == 0x08820AF8u) goto L_08820AF8; return; L_08820AF8: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08820B04; } goto L_08820B00; } L_08820B00: ctx.gpr[18] = (0u | 0u); goto L_08820B04; L_08820B04: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08820B34; } goto L_08820B0C; } L_08820B0C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820B18u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 982u, 0x0890BE50u>(ctx, &aot_mem) && ctx.pc == 0x08820B18u) goto L_08820B18; return; L_08820B18: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(92))); ctx.gpr[5] = (0u | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(248)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[7]; ctx.gpr[31] = (0x08820B34u); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08820B34u) goto L_08820B34; return; L_08820B34: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (0u + static_cast(-257)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(8), ctx.gpr[4]); ctx.gpr[2] = (0u | 1u); goto L_08820B48; L_08820B48: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(44))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08820B80: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[17]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[17] = (ctx.gpr[5] | 0u); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[7] + static_cast(28)); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[7]; ctx.gpr[18] = (ctx.gpr[6] | 0u); if (branch_taken) { goto L_08820BD0; } goto L_08820BBC; } L_08820BBC: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(1))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[6]; // nop if (branch_taken) { goto L_08820BD8; } goto L_08820BC8; } L_08820BC8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820C2C; } goto L_08820BD0; } L_08820BD0: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08820D90; } goto L_08820BD8; } L_08820BD8: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(72))); ctx.gpr[6] = (ctx.gpr[6] & 14u); ctx.gpr[6] = (ctx.gpr[6] ^ 6u); ctx.gpr[6] = (ctx.gpr[6] < static_cast(1) ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08820C2C; } goto L_08820BF4; } L_08820BF4: ctx.gpr[19] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820C00u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08820C00u) goto L_08820C00; return; L_08820C00: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08820C20; } goto L_08820C08; } L_08820C08: ctx.gpr[31] = (0x08820C10u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0081_entry, 81u, 80u, 0x0894854Cu>(ctx, &aot_mem) && ctx.pc == 0x08820C10u) goto L_08820C10; return; L_08820C10: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08820C20; } goto L_08820C18; } L_08820C18: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08820D90; } goto L_08820C20; } L_08820C20: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(28)); goto L_08820C2C; L_08820C2C: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(3))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[6]; // nop if (branch_taken) { goto L_08820C60; } goto L_08820C38; } L_08820C38: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(11))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[6]; // nop if (branch_taken) { goto L_08820C58; } goto L_08820C44; } L_08820C44: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(5))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[6]; // nop if (branch_taken) { goto L_08820C74; } goto L_08820C50; } L_08820C50: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820D58; } goto L_08820C58; } L_08820C58: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08820D90; } goto L_08820C60; } L_08820C60: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(12))); ctx.gpr[31] = (0x08820C6Cu); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 659u, 0x0890ED0Cu>(ctx, &aot_mem) && ctx.pc == 0x08820C6Cu) goto L_08820C6C; return; L_08820C6C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08820D90; } goto L_08820C74; } L_08820C74: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(2228))); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 58u); { const bool branch_taken = ctx.gpr[5] == ctx.gpr[6]; ctx.gpr[19] = (0u | 1u); if (branch_taken) { goto L_08820C94; } goto L_08820C88; } L_08820C88: ctx.gpr[6] = (0u | 57u); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[6]; ctx.gpr[4] = (ctx.gpr[4] & 255u); if (branch_taken) { goto L_08820C9C; } goto L_08820C94; } L_08820C94: ctx.gpr[4] = (0u | 1u); ctx.gpr[4] = (ctx.gpr[4] & 255u); goto L_08820C9C; L_08820C9C: { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08820D50; } goto L_08820CA4; } L_08820CA4: ctx.gpr[4] = (16512u << 16u); { const bool branch_taken = ctx.gpr[18] != 0u; ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); if (branch_taken) { goto L_08820CD0; } goto L_08820CB0; } L_08820CB0: ctx.fpr[13] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 16u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[31] = (0x08820CC8u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0070_entry, 70u, 653u, 0x0891F338u>(ctx, &aot_mem) && ctx.pc == 0x08820CC8u) goto L_08820CC8; return; L_08820CC8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08820D50; } goto L_08820CD0; } L_08820CD0: ctx.gpr[31] = (0x08820CD8u); // nop if (rt.invoke_chained_direct<&recomp_unit_0099_entry, 99u, 230u, 0x089910A0u>(ctx, &aot_mem) && ctx.pc == 0x08820CD8u) goto L_08820CD8; return; L_08820CD8: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 53u); ctx.gpr[31] = (0x08820CE8u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0140_entry, 140u, 510u, 0x08A360ECu>(ctx, &aot_mem) && ctx.pc == 0x08820CE8u) goto L_08820CE8; return; L_08820CE8: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820CF8u); ctx.gpr[5] = (0u | 53u); if (rt.invoke_chained_direct<&recomp_unit_0056_entry, 56u, 113u, 0x088E4910u>(ctx, &aot_mem) && ctx.pc == 0x08820CF8u) goto L_08820CF8; return; L_08820CF8: ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[18] + static_cast(0))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[7] = (16256u << 16u); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[18] + static_cast(2))); ctx.fpr[13] = std::bit_cast(ctx.gpr[7]); ctx.gpr[31] = (0x08820D14u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0070_entry, 70u, 653u, 0x0891F338u>(ctx, &aot_mem) && ctx.pc == 0x08820D14u) goto L_08820D14; return; L_08820D14: ctx.gpr[18] = (ctx.gpr[2] | 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 16u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_08820D50; } goto L_08820D30; } L_08820D30: ctx.gpr[31] = (0x08820D38u); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 727u, 0x0881FF54u>(ctx, &aot_mem) && ctx.pc == 0x08820D38u) goto L_08820D38; return; L_08820D38: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08820D50; } goto L_08820D40; } L_08820D40: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08820D50u); ctx.gpr[6] = (ctx.gpr[18] | 0u); goto L_088211AC; L_08820D50: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (ctx.gpr[19] | 0u); if (branch_taken) { goto L_08820D90; } goto L_08820D58; } L_08820D58: ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08820D8C; } goto L_08820D64; } L_08820D64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(2228))); ctx.gpr[4] = (ctx.gpr[4] ^ 58u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[16] = (0u | 1u); if (branch_taken) { goto L_08820D84; } goto L_08820D7C; } L_08820D7C: ctx.gpr[31] = (0x08820D84u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 854u, 0x0890B608u>(ctx, &aot_mem) && ctx.pc == 0x08820D84u) goto L_08820D84; return; L_08820D84: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_08820D90; } goto L_08820D8C; } L_08820D8C: ctx.gpr[2] = (0u | 0u); goto L_08820D90; L_08820D90: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08820DB0: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[6] = (16128u << 16u); ctx.gpr[7] = (ctx.gpr[5] & 256u); { const bool branch_taken = ctx.gpr[7] == 0u; ctx.fpr[13] = std::bit_cast(ctx.gpr[6]); if (branch_taken) { goto L_08820DF4; } goto L_08820DC4; } L_08820DC4: ctx.gpr[6] = (16256u << 16u); ctx.fpr[14] = std::bit_cast(ctx.gpr[6]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[14])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08820DEC; } goto L_08820DDC; } L_08820DDC: ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08820DF4; } goto L_08820DEC; } L_08820DEC: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08820DF8; } goto L_08820DF4; } L_08820DF4: ctx.gpr[2] = (0u | 0u); goto L_08820DF8; L_08820DF8: ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08820E14; } goto L_08820E08; } L_08820E08: ctx.gpr[5] = (ctx.gpr[5] | 256u); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); if (branch_taken) { goto L_08820E20; } goto L_08820E14; } L_08820E14: ctx.gpr[6] = (0u + static_cast(-257)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); goto L_08820E20; L_08820E20: jump_target = ctx.gpr[31]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08820E28: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-176)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(8))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(156), ctx.gpr[20]); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(8))); ctx.gpr[6] = (ctx.gpr[7] << 6u); ctx.gpr[20] = (ctx.gpr[20] + ctx.gpr[6]); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(12))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(144), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(132), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(136), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(140), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(148), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(152), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(160), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[16] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_08820F50; } goto L_08820E70; } L_08820E70: ctx.fpr[22] = std::bit_cast(0u); ctx.gpr[18] = (ctx.gpr[20] + static_cast(16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08820E90u); ctx.gpr[5] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 461u, 0x08A93198u>(ctx, &aot_mem) && ctx.pc == 0x08820E90u) goto L_08820E90; return; L_08820E90: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08820F50; } goto L_08820E98; } L_08820E98: ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(16))); ctx.gpr[4] = (16457u << 16u); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[13]) ^ 0x80000000u); ctx.gpr[4] = (ctx.gpr[4] | 4059u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[13]) || std::isnan(ctx.fpr[22])) && ctx.fpr[13] == ctx.fpr[22])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(20))); { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); if (branch_taken) { goto L_08820ED4; } goto L_08820EBC; } L_08820EBC: ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[22])) && ctx.fpr[12] == ctx.fpr[22])); // nop if (!ctx.fpu_condition()) { ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08820ED8; } goto L_08820ECC; L_08820ECC: { const bool branch_taken = 0u == 0u; ctx.fpr[22] = ctx.fpr[22] + ctx.fpr[20]; if (branch_taken) { goto L_08820EE8; } goto L_08820ED4; } L_08820ED4: ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08820ED8; L_08820ED8: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[13])); ctx.gpr[31] = (0x08820EE4u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[14])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08820EE4u) goto L_08820EE4; return; L_08820EE4: ctx.fpr[22] = ctx.fpr[0] + ctx.fpr[20]; goto L_08820EE8; L_08820EE8: ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[31] = (0x08820EF4u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0170_entry, 170u, 785u, 0x08AAF8ACu>(ctx, &aot_mem) && ctx.pc == 0x08820EF4u) goto L_08820EF4; return; L_08820EF4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(16); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(32); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<6u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } { float vfpu_matrix[16]{}, vfpu_target_raw[4]{}, vfpu_target[4]{}, vfpu_result[4]{}; ctx.read_vfpu_matrix(vfpu_matrix, 36u, 3u); ctx.read_vfpu_vector_ct<7u, 3u>(vfpu_target_raw); constexpr std::uint32_t vfpu_side = 3u; constexpr std::uint32_t vfpu_input_length = 3u; for (std::uint32_t i = 0; i < 4u; ++i) vfpu_target[i] = i < vfpu_input_length ? vfpu_target_raw[i] : 0.0f; if (vfpu_side - 1u >= vfpu_input_length) vfpu_target[vfpu_side - 1u] = 1.0f; for (std::uint32_t row = 0; row + 1u < vfpu_side; ++row) { float sum = 0.0f; for (std::uint32_t column = 0; column < vfpu_side; ++column) sum += vfpu_matrix[row * 4u + column] * vfpu_target[column]; vfpu_result[row] = sum; } float vfpu_final_row[4]{vfpu_matrix[(vfpu_side - 1u) * 4u + 0u], vfpu_matrix[(vfpu_side - 1u) * 4u + 1u], vfpu_matrix[(vfpu_side - 1u) * 4u + 2u], vfpu_matrix[(vfpu_side - 1u) * 4u + 3u]}; ctx.apply_vfpu_source_prefix_ct<4u, 0u>(vfpu_final_row); ctx.apply_vfpu_source_prefix_ct<4u, 1u>(vfpu_target); for (std::uint32_t column = 0; column < 4u; ++column) vfpu_result[vfpu_side - 1u] += vfpu_final_row[column] * vfpu_target[column]; const std::uint32_t vfpu_destination_prefix = ctx.vfpu_ctrl[2]; const std::uint32_t vfpu_last_lane = vfpu_side - 1u; ctx.vfpu_ctrl[2] = ((vfpu_destination_prefix & (1u << 8u)) << vfpu_last_lane) | ((vfpu_destination_prefix & 3u) << (vfpu_last_lane * 2u)); ctx.write_vfpu_vector_with_destination_prefix(vfpu_result, 0u, vfpu_side); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (ctx.gpr[16] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); aot_mem.aot_store32(ctx.gpr[4] + static_cast(48), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[4] + static_cast(52), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[4] + static_cast(56), std::bit_cast(ctx.fpr[14])); goto L_08820F50; L_08820F50: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821030; } goto L_08820F5C; } L_08820F5C: ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[20] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[12])); ctx.gpr[31] = (0x08820F78u); ctx.gpr[5] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 461u, 0x08A93198u>(ctx, &aot_mem) && ctx.pc == 0x08820F78u) goto L_08820F78; return; L_08820F78: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08821030; } goto L_08820F80; } L_08820F80: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[20] + static_cast(42)))))); ctx.gpr[5] = (0u | 1u); ctx.gpr[4] = (ctx.gpr[4] & 32768u); ctx.gpr[4] = (ctx.gpr[4] >> 15u); ctx.gpr[4] = (ctx.gpr[4] & 65535u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08821030; } goto L_08820FA4; } L_08820FA4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08820FEC; } goto L_08820FC4; } L_08820FC4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[5] = (0u + static_cast(-2)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(456))); ctx.gpr[7] = (0u + static_cast(-4097)); ctx.gpr[5] = (ctx.gpr[6] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(456), ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[7]); ctx.gpr[4] = (ctx.gpr[4] | 4096u); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); goto L_08820FEC; L_08820FEC: { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(16); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(32); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<6u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } { float vfpu_matrix[16]{}, vfpu_target_raw[4]{}, vfpu_target[4]{}, vfpu_result[4]{}; ctx.read_vfpu_matrix(vfpu_matrix, 36u, 3u); ctx.read_vfpu_vector_ct<7u, 3u>(vfpu_target_raw); constexpr std::uint32_t vfpu_side = 3u; constexpr std::uint32_t vfpu_input_length = 3u; for (std::uint32_t i = 0; i < 4u; ++i) vfpu_target[i] = i < vfpu_input_length ? vfpu_target_raw[i] : 0.0f; if (vfpu_side - 1u >= vfpu_input_length) vfpu_target[vfpu_side - 1u] = 1.0f; for (std::uint32_t row = 0; row + 1u < vfpu_side; ++row) { float sum = 0.0f; for (std::uint32_t column = 0; column < vfpu_side; ++column) sum += vfpu_matrix[row * 4u + column] * vfpu_target[column]; vfpu_result[row] = sum; } float vfpu_final_row[4]{vfpu_matrix[(vfpu_side - 1u) * 4u + 0u], vfpu_matrix[(vfpu_side - 1u) * 4u + 1u], vfpu_matrix[(vfpu_side - 1u) * 4u + 2u], vfpu_matrix[(vfpu_side - 1u) * 4u + 3u]}; ctx.apply_vfpu_source_prefix_ct<4u, 0u>(vfpu_final_row); ctx.apply_vfpu_source_prefix_ct<4u, 1u>(vfpu_target); for (std::uint32_t column = 0; column < 4u; ++column) vfpu_result[vfpu_side - 1u] += vfpu_final_row[column] * vfpu_target[column]; const std::uint32_t vfpu_destination_prefix = ctx.vfpu_ctrl[2]; const std::uint32_t vfpu_last_lane = vfpu_side - 1u; ctx.vfpu_ctrl[2] = ((vfpu_destination_prefix & (1u << 8u)) << vfpu_last_lane) | ((vfpu_destination_prefix & 3u) << (vfpu_last_lane * 2u)); ctx.write_vfpu_vector_with_destination_prefix(vfpu_result, 0u, vfpu_side); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(48)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(64))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(68))); ctx.gpr[31] = (0x08821030u); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(72))); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 600u, 0x08A66CD8u>(ctx, &aot_mem) && ctx.pc == 0x08821030u) goto L_08821030; return; L_08821030: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 512u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08821078; } goto L_08821048; } L_08821048: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2120))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821078; } goto L_08821054; } L_08821054: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2120))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821078; } goto L_08821074; } L_08821074: aot_mem.aot_store32(ctx.gpr[16] + static_cast(2120), 0u); goto L_08821078; L_08821078: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(236))); ctx.gpr[4] = (ctx.gpr[4] & 256u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08821184; } goto L_08821090; } L_08821090: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882110C; } goto L_088210A8; } L_088210A8: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-24056))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(20))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(160)); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_0882110C; } goto L_088210D0; } L_088210D0: ctx.gpr[16] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[5] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[5]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (0u | 0u); if (branch_taken) { goto L_088210F4; } goto L_088210E4; } L_088210E4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[5] = (ctx.gpr[16] << 2u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); goto L_088210F4; L_088210F4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-24056))); ctx.gpr[6] = (0u | 0u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(160)); aot_mem.aot_store32(ctx.gpr[4] + static_cast(20), ctx.gpr[5]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[4] + static_cast(18), static_cast(ctx.gpr[6])); if (branch_taken) { goto L_08821184; } goto L_0882110C; } L_0882110C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08821184; } goto L_08821124; } L_08821124: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-24056))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(20))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(80)); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08821184; } goto L_0882114C; } L_0882114C: ctx.gpr[16] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7656))); ctx.gpr[5] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[5]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (0u | 0u); if (branch_taken) { goto L_08821170; } goto L_08821160; } L_08821160: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[5] = (ctx.gpr[16] << 2u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); goto L_08821170; L_08821170: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-24056))); ctx.gpr[6] = (0u | 0u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(80)); aot_mem.aot_store32(ctx.gpr[4] + static_cast(20), ctx.gpr[5]); aot_mem.aot_store8(ctx.gpr[4] + static_cast(18), static_cast(ctx.gpr[6])); goto L_08821184; L_08821184: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(132))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(136))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(140))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(144))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(148))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(152))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(156))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(160))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(176)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088211AC: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[6] | 0u); ctx.gpr[4] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(80))); ctx.gpr[6] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x088211D8u); ctx.gpr[7] = (0u | 170u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 175u, 0x089089B8u>(ctx, &aot_mem) && ctx.pc == 0x088211D8u) goto L_088211D8; return; L_088211D8: ctx.gpr[17] = (ctx.gpr[2] | 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[5] = (1u << 16u); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); ctx.gpr[5] = (14119u << 16u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[5] | 50604u); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[4] | 8u); aot_mem.aot_store32(ctx.gpr[17] + static_cast(16), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] | 4u); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); ctx.fpr[20] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[4] | 2u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); ctx.gpr[31] = (0x08821228u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 73u, 0x08890474u>(ctx, &aot_mem) && ctx.pc == 0x08821228u) goto L_08821228; return; L_08821228: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[5] = (16256u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 1u); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(44), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[17] + static_cast(36), std::bit_cast(ctx.fpr[20])); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[5] = (8u << 16u); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(8), ctx.gpr[4]); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_0882126C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-256)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(220), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(216), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[5] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(196), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(200), std::bit_cast(ctx.fpr[22])); ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[13])); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.gpr[5] = (16672u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(204), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(208), std::bit_cast(ctx.fpr[26])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(212), std::bit_cast(ctx.fpr[28])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(224), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(228), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(232), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(236), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(240), ctx.gpr[31]); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x088212D0u); ctx.fpr[24] = std::bit_cast(ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x088212D0u) goto L_088212D0; return; L_088212D0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[2] << 6u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(50))); ctx.gpr[5] = (17279u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = static_cast(static_cast(std::bit_cast(ctx.fpr[12]))); ctx.fpr[13] = std::bit_cast(ctx.gpr[5]); ctx.fpr[12] = ctx.fpr[12] / ctx.fpr[13]; { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[24]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } ctx.fpr[28] = std::bit_cast(0u); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[28])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821590; } goto L_08821310; } L_08821310: { const float fs = ctx.fpr[22]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[26] = std::bit_cast(0x7FC00000u); else ctx.fpr[26] = fs * ft; } ctx.gpr[4] = (16256u << 16u); { const float fs = ctx.fpr[20]; const float ft = ctx.fpr[20]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } ctx.fpr[24] = std::bit_cast(ctx.gpr[4]); ctx.fpr[26] = ctx.fpr[26] + ctx.fpr[13]; ctx.set_fpu_condition((ctx.fpr[26] <= ctx.fpr[24])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_0882134C; } goto L_08821334; } L_08821334: ctx.fpr[13] = std::sqrt(ctx.fpr[26]); ctx.fpr[13] = ctx.fpr[24] / ctx.fpr[13]; ctx.fpr[26] = std::bit_cast(std::bit_cast(ctx.fpr[24])); { const float fs = ctx.fpr[13]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[22] = std::bit_cast(0x7FC00000u); else ctx.fpr[22] = fs * ft; } { const bool branch_taken = 0u == 0u; { const float fs = ctx.fpr[13]; const float ft = ctx.fpr[20]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[20] = std::bit_cast(0x7FC00000u); else ctx.fpr[20] = fs * ft; } if (branch_taken) { goto L_08821350; } goto L_0882134C; } L_0882134C: ctx.fpr[26] = std::sqrt(ctx.fpr[26]); goto L_08821350; L_08821350: ctx.set_fpu_condition((ctx.fpr[26] <= ctx.fpr[28])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821520; } goto L_08821360; } L_08821360: { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[22]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), std::bit_cast(ctx.fpr[13])); { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[20]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), std::bit_cast(ctx.fpr[28])); ctx.gpr[19] = (ctx.gpr[29] + static_cast(16)); { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<4u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(16); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<5u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[16] + static_cast(32); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<6u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<7u, 4u>(vfpu_value); } { float vfpu_matrix[16]{}, vfpu_target_raw[4]{}, vfpu_target[4]{}, vfpu_result[4]{}; ctx.read_vfpu_matrix(vfpu_matrix, 36u, 3u); ctx.read_vfpu_vector_ct<7u, 3u>(vfpu_target_raw); constexpr std::uint32_t vfpu_side = 3u; constexpr std::uint32_t vfpu_input_length = 3u; for (std::uint32_t i = 0; i < 4u; ++i) vfpu_target[i] = i < vfpu_input_length ? vfpu_target_raw[i] : 0.0f; if (vfpu_side - 1u >= vfpu_input_length) vfpu_target[vfpu_side - 1u] = 1.0f; for (std::uint32_t row = 0; row + 1u < vfpu_side; ++row) { float sum = 0.0f; for (std::uint32_t column = 0; column < vfpu_side; ++column) sum += vfpu_matrix[row * 4u + column] * vfpu_target[column]; vfpu_result[row] = sum; } float vfpu_final_row[4]{vfpu_matrix[(vfpu_side - 1u) * 4u + 0u], vfpu_matrix[(vfpu_side - 1u) * 4u + 1u], vfpu_matrix[(vfpu_side - 1u) * 4u + 2u], vfpu_matrix[(vfpu_side - 1u) * 4u + 3u]}; ctx.apply_vfpu_source_prefix_ct<4u, 0u>(vfpu_final_row); ctx.apply_vfpu_source_prefix_ct<4u, 1u>(vfpu_target); for (std::uint32_t column = 0; column < 4u; ++column) vfpu_result[vfpu_side - 1u] += vfpu_final_row[column] * vfpu_target[column]; const std::uint32_t vfpu_destination_prefix = ctx.vfpu_ctrl[2]; const std::uint32_t vfpu_last_lane = vfpu_side - 1u; ctx.vfpu_ctrl[2] = ((vfpu_destination_prefix & (1u << 8u)) << vfpu_last_lane) | ((vfpu_destination_prefix & 3u) << (vfpu_last_lane * 2u)); ctx.write_vfpu_vector_with_destination_prefix(vfpu_result, 0u, vfpu_side); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[29] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[18] = (0u | 1u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(468))); ctx.gpr[5] = (16384u << 16u); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821454; } goto L_088213B0; } L_088213B0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(472))); ctx.gpr[4] = (ctx.gpr[4] & 32u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821454; } goto L_088213C0; } L_088213C0: ctx.gpr[4] = (16000u << 16u); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); ctx.gpr[20] = (ctx.gpr[29] + static_cast(80)); ctx.gpr[21] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[4] = (17096u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[4] = (ctx.gpr[29] + static_cast(48)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (ctx.gpr[16] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] + vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[6] = (ctx.gpr[29] + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[7] = (ctx.gpr[16] + static_cast(2212)); ctx.gpr[8] = (ctx.gpr[16] + static_cast(2220)); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x0882141Cu); ctx.gpr[5] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0038_entry, 38u, 656u, 0x0889EE44u>(ctx, &aot_mem) && ctx.pc == 0x0882141Cu) goto L_0882141C; return; L_0882141C: { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[20])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821454; } goto L_08821450; } L_08821450: ctx.gpr[18] = (0u | 0u); goto L_08821454; L_08821454: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088214F0; } goto L_08821460; } L_08821460: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088214F0; } goto L_08821480; } L_08821480: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[4] = (ctx.gpr[16] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(96)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.gpr[5] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[28] + static_cast(-19252))); { const float fs = ctx.fpr[13]; const float ft = ctx.fpr[13]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_088214F0; } goto L_088214C8; } L_088214C8: { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[28])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_088214F0; } goto L_088214EC; } L_088214EC: ctx.gpr[18] = (0u | 0u); goto L_088214F0; L_088214F0: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08821514; } goto L_088214F8; } L_088214F8: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[31] = (0x0882150Cu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 600u, 0x08A66CD8u>(ctx, &aot_mem) && ctx.pc == 0x0882150Cu) goto L_0882150C; return; L_0882150C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08821520; } goto L_08821514; } L_08821514: ctx.gpr[4] = (15820u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); goto L_08821520; L_08821520: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x0882153Cu); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882153Cu) goto L_0882153C; return; L_0882153C: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08821548u); ctx.gpr[5] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 330u, 0x0881E160u>(ctx, &aot_mem) && ctx.pc == 0x08821548u) goto L_08821548; return; L_08821548: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08821590; } goto L_08821550; } L_08821550: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x0882155Cu); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 545u, 0x0881F0FCu>(ctx, &aot_mem) && ctx.pc == 0x0882155Cu) goto L_0882155C; return; L_0882155C: ctx.set_fpu_condition((ctx.fpr[0] < ctx.fpr[24])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821590; } goto L_0882156C; } L_0882156C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821590; } goto L_08821578; } L_08821578: ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08821588u); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 558u, 0x0881F1B0u>(ctx, &aot_mem) && ctx.pc == 0x08821588u) goto L_08821588; return; L_08821588: { const float fs = ctx.fpr[0]; const float ft = ctx.fpr[26]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } aot_mem.aot_store32(ctx.gpr[18] + static_cast(44), std::bit_cast(ctx.fpr[12])); goto L_08821590; L_08821590: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(196))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(200))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(204))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(208))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(212))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(216))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(220))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(224))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(228))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(232))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(236))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(240))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(256)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088215C8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (ctx.gpr[6] & 255u); ctx.gpr[6] = (ctx.gpr[7] & 1024u); ctx.gpr[6] = (0u < ctx.gpr[6] ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08821608; } goto L_088215F8; } L_088215F8: ctx.gpr[6] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (ctx.gpr[4] | 0u); ctx.gpr[31] = (0x08821608u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 583u, 0x0881F474u>(ctx, &aot_mem) && ctx.pc == 0x08821608u) goto L_08821608; return; L_08821608: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 512u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088216AC; } goto L_08821620; } L_08821620: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088216AC; } goto L_0882162C; } L_0882162C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[5] = (ctx.gpr[5] & 14u); ctx.gpr[5] = (ctx.gpr[5] ^ 6u); ctx.gpr[5] = (ctx.gpr[5] < static_cast(1) ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088216AC; } goto L_08821648; } L_08821648: ctx.gpr[16] = (ctx.gpr[4] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_088216AC; } goto L_08821654; } L_08821654: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(92))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(216)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[5] + static_cast(0)))))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(4))); jump_target = ctx.gpr[5]; ctx.gpr[31] = (0x0882166Cu); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[6]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882166Cu) goto L_0882166C; return; L_0882166C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088216AC; } goto L_08821684; } L_08821684: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(92))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(216)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x0882169Cu); ctx.gpr[4] = (ctx.gpr[16] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882169Cu) goto L_0882169C; return; L_0882169C: ctx.gpr[4] = (ctx.gpr[2] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088216ACu); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 583u, 0x0881F474u>(ctx, &aot_mem) && ctx.pc == 0x088216ACu) goto L_088216AC; return; L_088216AC: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088216BC: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-464)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(432), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(436), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(440), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(444), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(448), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(452), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(456), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(460), ctx.gpr[31]); ctx.gpr[17] = (ctx.gpr[5] | 0u); ctx.gpr[4] = (ctx.gpr[6] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[20] = (ctx.gpr[29] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[7] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[19] = (ctx.gpr[29] + static_cast(80)); { 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); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_value[4]{}; vfpu_value[0u] = 1.0f; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 1u, 1u, 3u>(); ctx.execute_vfpu_vcmp_ct<28u, 32u, 1u, 3u>(); { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<28u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = 1.0f / std::sqrt(vfpu_s[i]); ctx.write_vfpu_vector_with_destination_prefix_ct<28u, 1u>(vfpu_d); } ctx.execute_vfpu_vscl_ct<1u, 1u, 28u, 3u>(); ctx.execute_vfpu_vcmov_ct<1u, 0u, 3u, 0u, false>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<1u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (16256u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), std::bit_cast(ctx.fpr[13])); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(16)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<2u, 4u>(vfpu_value); } ctx.execute_vfpu_cross_quat(0u, 1u, 2u, 3u); ctx.gpr[18] = (ctx.gpr[29] + static_cast(96)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<28u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = std::fabs(std::sqrt(vfpu_s[i])); ctx.write_vfpu_vector_with_destination_prefix_ct<28u, 1u>(vfpu_d); } ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16147u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 46662u); ctx.fpr[22] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16320u << 16u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[13]; const float ft = ctx.fpr[14]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } ctx.fpr[22] = ctx.fpr[13] / ctx.fpr[22]; { const std::uint32_t vfpu_address = ctx.gpr[7] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[4] = (2236u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(32304)); ctx.gpr[8] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[8] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 1u, 3u>(); ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16128u << 16u); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); ctx.gpr[16] = (ctx.gpr[6] | 0u); ctx.set_fpu_condition((ctx.fpr[13] <= ctx.fpr[12])); // nop { const bool branch_taken = ctx.fpu_condition(); ctx.gpr[4] = (ctx.gpr[7] | 0u); if (branch_taken) { goto L_088217EC; } goto L_088217D4; } L_088217D4: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = -vfpu_s[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[6] = (ctx.gpr[29] + static_cast(128)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } goto L_088217EC; L_088217EC: ctx.gpr[6] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[7] = (std::bit_cast(ctx.fpr[20])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[7]); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[7] = (ctx.gpr[29] + static_cast(48)); { 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); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[7] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] + vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] + vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } { 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); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[6] | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 1u); ctx.gpr[11] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[31] = (0x0882186Cu); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), 0u); if (rt.invoke_chained_direct<&recomp_unit_0036_entry, 36u, 527u, 0x088967ACu>(ctx, &aot_mem) && ctx.pc == 0x0882186Cu) goto L_0882186C; return; L_0882186C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088218A8; } goto L_08821874; } L_08821874: aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 1u); ctx.gpr[11] = (0u | 0u); ctx.gpr[31] = (0x088218A0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), 0u); if (rt.invoke_chained_direct<&recomp_unit_0036_entry, 36u, 527u, 0x088967ACu>(ctx, &aot_mem) && ctx.pc == 0x088218A0u) goto L_088218A0; return; L_088218A0: if (ctx.gpr[2] != 0u) { ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); goto L_0882191C; } goto L_088218A8; L_088218A8: { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = -vfpu_s[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(192)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (std::bit_cast(ctx.fpr[22])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[5]); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[4] = (ctx.gpr[29] + static_cast(176)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (std::bit_cast(ctx.fpr[20])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[5]); { const std::uint32_t vfpu_address = ctx.gpr[19] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[5] = (ctx.gpr[29] + static_cast(208)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] + vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(160)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] + vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(144)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(86)))))); goto L_0882191C; L_0882191C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(20))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(12))); ctx.fpr[12] = ctx.fpr[12] + ctx.fpr[13]; aot_mem.aot_store32(ctx.gpr[17] + static_cast(8), std::bit_cast(ctx.fpr[12])); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(432))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(436))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(440))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(444))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(448))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(452))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(456))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(460))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(464)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821968: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-64)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[18]); ctx.gpr[16] = (ctx.gpr[5] | 0u); ctx.gpr[18] = (ctx.gpr[29] + static_cast(16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[17]); ctx.gpr[7] = (ctx.gpr[6] | 0u); ctx.gpr[17] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), ctx.gpr[31]); ctx.gpr[31] = (0x0882199Cu); ctx.gpr[6] = (ctx.gpr[16] | 0u); goto L_088216BC; L_0882199C: ctx.gpr[4] = (16256u << 16u); ctx.fpr[12] = std::bit_cast(0u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[12])); ctx.gpr[19] = (ctx.gpr[4] + static_cast(32304)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[13])); ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x088219CCu); ctx.gpr[6] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0134_entry, 134u, 155u, 0x08A1CF5Cu>(ctx, &aot_mem) && ctx.pc == 0x088219CCu) goto L_088219CC; return; L_088219CC: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[6] = (0u | 15u); ctx.gpr[7] = (0u | 2u); ctx.gpr[31] = (0x088219E4u); ctx.gpr[8] = (0u | 2u); if (rt.invoke_chained_direct<&recomp_unit_0134_entry, 134u, 243u, 0x08A1D43Cu>(ctx, &aot_mem) && ctx.pc == 0x088219E4u) goto L_088219E4; return; L_088219E4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(24))); if (ctx.gpr[4] == 0u) { aot_mem.aot_store32(ctx.gpr[5] + static_cast(24), ctx.gpr[16]); goto L_08821A04; } goto L_088219F4; L_088219F4: ctx.gpr[31] = (0x088219FCu); ctx.gpr[5] = (ctx.gpr[5] + static_cast(24)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 430u, 0x08A93004u>(ctx, &aot_mem) && ctx.pc == 0x088219FCu) goto L_088219FC; return; L_088219FC: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); aot_mem.aot_store32(ctx.gpr[5] + static_cast(24), ctx.gpr[16]); goto L_08821A04; L_08821A04: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(24))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821A24; } goto L_08821A14; } L_08821A14: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821A24; } goto L_08821A1C; } L_08821A1C: ctx.gpr[31] = (0x08821A24u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(24)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 419u, 0x08A92F78u>(ctx, &aot_mem) && ctx.pc == 0x08821A24u) goto L_08821A24; return; L_08821A24: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(44))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(48))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(64)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821A40: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[17]); ctx.gpr[16] = (ctx.gpr[5] | 0u); ctx.gpr[17] = (ctx.gpr[29] + static_cast(16)); ctx.gpr[7] = (ctx.gpr[6] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[31]); ctx.gpr[31] = (0x08821A6Cu); ctx.gpr[6] = (ctx.gpr[16] | 0u); goto L_088216BC; L_08821A6C: ctx.gpr[4] = (16256u << 16u); ctx.fpr[12] = std::bit_cast(0u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), std::bit_cast(ctx.fpr[12])); ctx.gpr[18] = (ctx.gpr[4] + static_cast(32304)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[13])); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08821A9Cu); ctx.gpr[6] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0134_entry, 134u, 155u, 0x08A1CF5Cu>(ctx, &aot_mem) && ctx.pc == 0x08821A9Cu) goto L_08821A9C; return; L_08821A9C: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (0u | 15u); ctx.gpr[7] = (0u | 2u); ctx.gpr[31] = (0x08821AB4u); ctx.gpr[8] = (0u | 2u); if (rt.invoke_chained_direct<&recomp_unit_0134_entry, 134u, 243u, 0x08A1D43Cu>(ctx, &aot_mem) && ctx.pc == 0x08821AB4u) goto L_08821AB4; return; L_08821AB4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(24))); if (ctx.gpr[4] == 0u) { aot_mem.aot_store32(ctx.gpr[5] + static_cast(24), ctx.gpr[16]); goto L_08821AD4; } goto L_08821AC4; L_08821AC4: ctx.gpr[31] = (0x08821ACCu); ctx.gpr[5] = (ctx.gpr[5] + static_cast(24)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 430u, 0x08A93004u>(ctx, &aot_mem) && ctx.pc == 0x08821ACCu) goto L_08821ACC; return; L_08821ACC: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); aot_mem.aot_store32(ctx.gpr[5] + static_cast(24), ctx.gpr[16]); goto L_08821AD4; L_08821AD4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(24))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821AF4; } goto L_08821AE4; } L_08821AE4: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08821AF4; } goto L_08821AEC; } L_08821AEC: ctx.gpr[31] = (0x08821AF4u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(24)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 419u, 0x08A92F78u>(ctx, &aot_mem) && ctx.pc == 0x08821AF4u) goto L_08821AF4; return; L_08821AF4: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(44))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821B0C: ctx.gpr[9] = (2232u << 16u); ctx.gpr[10] = (ctx.gpr[7] & 255u); ctx.gpr[8] = (ctx.gpr[6] << 2u); ctx.gpr[7] = (ctx.gpr[9] + static_cast(-10984)); ctx.gpr[7] = (ctx.gpr[8] + ctx.gpr[7]); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[7] + static_cast(0))); ctx.gpr[2] = (0u | 0u); { const bool branch_taken = ctx.gpr[10] == 0u; ctx.gpr[7] = (65504u << 16u); if (branch_taken) { goto L_08821B84; } goto L_08821B30; } L_08821B30: ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(8))); ctx.gpr[10] = (0u | 1u); ctx.gpr[6] = (ctx.gpr[10] << (ctx.gpr[6] & 31u)); ctx.gpr[9] = (ctx.gpr[9] | ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(8), ctx.gpr[9]); ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[7] = (ctx.gpr[9] & ctx.gpr[7]); ctx.gpr[7] = (ctx.gpr[7] >> 21u); ctx.gpr[7] = (ctx.gpr[7] & ctx.gpr[8]); { const bool branch_taken = ctx.gpr[7] != 0u; // nop if (branch_taken) { goto L_08821BD0; } goto L_08821B5C; } L_08821B5C: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(4))); ctx.gpr[8] = (ctx.gpr[8] & 2047u); ctx.gpr[6] = (ctx.gpr[7] | ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(4), ctx.gpr[6]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[6] = (ctx.gpr[8] << 21u); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08821BD0; } goto L_08821B84; } L_08821B84: ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[7] = (ctx.gpr[9] & ctx.gpr[7]); ctx.gpr[7] = (ctx.gpr[7] >> 21u); ctx.gpr[7] = (ctx.gpr[7] & ctx.gpr[8]); { const bool branch_taken = ctx.gpr[7] == 0u; // nop if (branch_taken) { goto L_08821BB0; } goto L_08821B9C; } L_08821B9C: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(0))); ctx.gpr[2] = (0u | 1u); ctx.gpr[6] = (ctx.gpr[2] << (ctx.gpr[6] & 31u)); ctx.gpr[6] = (ctx.gpr[7] | ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(0), ctx.gpr[6]); goto L_08821BB0; L_08821BB0: ctx.gpr[5] = (~(ctx.gpr[8] | 0u)); ctx.gpr[7] = (32u << 16u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[5] << 21u); ctx.gpr[7] = (ctx.gpr[7] + static_cast(-1)); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[7]); ctx.gpr[5] = (ctx.gpr[6] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); goto L_08821BD0; L_08821BD0: jump_target = ctx.gpr[31]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821BD8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store8(ctx.gpr[29] + static_cast(0), static_cast(0u)); ctx.gpr[2] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[29] + static_cast(0)))))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821BEC: jump_target = ctx.gpr[31]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08821BF4: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-224)); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(169), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[29] + static_cast(171), static_cast(ctx.gpr[8])); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2244))); aot_mem.aot_store8(ctx.gpr[29] + static_cast(170), static_cast(ctx.gpr[7])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(188), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(192), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(208), ctx.gpr[30]); ctx.gpr[30] = (0u | 0u); ctx.gpr[7] = (static_cast(ctx.gpr[8]) < 2 ? 1u : 0u); ctx.gpr[20] = (ctx.gpr[4] | 0u); ctx.gpr[19] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(172), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(176), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(180), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(184), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(196), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(200), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(204), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(212), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[7] != 0u; ctx.gpr[21] = (ctx.gpr[6] | 0u); if (branch_taken) { goto L_08821C60; } goto L_08821C58; } L_08821C58: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(170), static_cast(ctx.gpr[4])); goto L_08821C60; L_08821C60: ctx.gpr[18] = (0u | 0u); ctx.gpr[31] = (0x08821C6Cu); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08821C6Cu) goto L_08821C6C; return; L_08821C6C: if (ctx.gpr[2] == 0u) { ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[19] + static_cast(1929)))))); goto L_08821EFC; } goto L_08821C74; L_08821C74: ctx.gpr[5] = (16384u << 16u); ctx.gpr[16] = (ctx.gpr[19] + static_cast(48)); ctx.fpr[20] = std::bit_cast(ctx.gpr[5]); ctx.gpr[17] = (ctx.gpr[19] + static_cast(16)); ctx.gpr[31] = (0x08821C8Cu); ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); if (rt.invoke_chained_direct<&recomp_unit_0115_entry, 115u, 291u, 0x089D1AECu>(ctx, &aot_mem) && ctx.pc == 0x08821C8Cu) goto L_08821C8C; return; L_08821C8C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[4] = (17056u << 16u); ctx.fpr[13] = ctx.fpr[12] - ctx.fpr[20]; ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.fpr[14] = ctx.fpr[13] / ctx.fpr[12]; aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), std::bit_cast(ctx.fpr[13])); ctx.gpr[4] = (16880u << 16u); ctx.gpr[5] = (0u | 49u); ctx.gpr[6] = (16840u << 16u); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[15] = ctx.fpr[13] - ctx.fpr[20]; aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), std::bit_cast(ctx.fpr[15])); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[14] = ctx.fpr[14] + ctx.fpr[13]; ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[20]; ctx.fpr[16] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[14])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), std::bit_cast(ctx.fpr[15])); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[16])); ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[20]; ctx.gpr[5] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[4]) ? 1u : 0u); ctx.fpr[14] = std::bit_cast(ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), std::bit_cast(ctx.fpr[15])); if (ctx.gpr[5] != 0u) { ctx.gpr[4] = (0u | 49u); goto L_08821CF4; } goto L_08821CF4; L_08821CF4: ctx.gpr[5] = (static_cast(ctx.gpr[4]) < 0 ? 1u : 0u); if (ctx.gpr[5] != 0u) { ctx.gpr[4] = (0u | 0u); goto L_08821D00; } goto L_08821D00; L_08821D00: ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(44))); ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[12]; ctx.gpr[5] = (0u | 49u); ctx.fpr[15] = ctx.fpr[15] + ctx.fpr[14]; ctx.fpr[15] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[15])); ctx.gpr[7] = (std::bit_cast(ctx.fpr[15])); ctx.gpr[5] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[7]) ? 1u : 0u); if (ctx.gpr[5] != 0u) { ctx.gpr[7] = (0u | 49u); goto L_08821D24; } goto L_08821D24; L_08821D24: ctx.gpr[5] = (static_cast(ctx.gpr[7]) < 0 ? 1u : 0u); if (ctx.gpr[5] != 0u) { ctx.gpr[7] = (0u | 0u); goto L_08821D30; } goto L_08821D30; L_08821D30: ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.fpr[15] = ctx.fpr[15] / ctx.fpr[12]; ctx.gpr[6] = (0u | 49u); ctx.fpr[13] = ctx.fpr[15] + ctx.fpr[13]; ctx.fpr[13] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[13])); ctx.gpr[5] = (std::bit_cast(ctx.fpr[13])); ctx.gpr[6] = (static_cast(ctx.gpr[6]) < static_cast(ctx.gpr[5]) ? 1u : 0u); if (ctx.gpr[6] != 0u) { ctx.gpr[5] = (0u | 49u); goto L_08821D54; } goto L_08821D54; L_08821D54: ctx.gpr[6] = (static_cast(ctx.gpr[5]) < 0 ? 1u : 0u); if (ctx.gpr[6] != 0u) { ctx.gpr[5] = (0u | 0u); goto L_08821D60; } goto L_08821D60; L_08821D60: ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.fpr[12] = ctx.fpr[13] / ctx.fpr[12]; ctx.gpr[8] = (0u | 49u); ctx.fpr[12] = ctx.fpr[12] + ctx.fpr[14]; ctx.fpr[12] = std::bit_cast(ctx.fpu_float_to_word_ct<1u>(ctx.fpr[12])); ctx.gpr[6] = (std::bit_cast(ctx.fpr[12])); ctx.gpr[8] = (static_cast(ctx.gpr[8]) < static_cast(ctx.gpr[6]) ? 1u : 0u); if (ctx.gpr[8] != 0u) { ctx.gpr[6] = (0u | 49u); goto L_08821D84; } goto L_08821D84; L_08821D84: ctx.gpr[8] = (static_cast(ctx.gpr[6]) < 0 ? 1u : 0u); if (ctx.gpr[8] != 0u) { ctx.gpr[6] = (0u | 0u); goto L_08821D90; } goto L_08821D90; L_08821D90: ctx.gpr[9] = (ctx.gpr[7] << 4u); ctx.gpr[10] = (ctx.gpr[7] + ctx.gpr[9]); { const float fs = ctx.fpr[20]; const float ft = ctx.fpr[20]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[20] = std::bit_cast(0x7FC00000u); else ctx.fpr[20] = fs * ft; } ctx.gpr[9] = (ctx.gpr[9] + ctx.gpr[10]); ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[10] = (ctx.gpr[9] + ctx.gpr[10]); ctx.gpr[9] = (16180u << 16u); ctx.gpr[9] = (ctx.gpr[9] | 65012u); ctx.fpr[16] = std::bit_cast(ctx.gpr[9]); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(48))); ctx.gpr[9] = (16256u << 16u); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(52))); ctx.fpr[13] = std::bit_cast(ctx.gpr[9]); ctx.gpr[8] = (static_cast(ctx.gpr[6]) < static_cast(ctx.gpr[7]) ? 1u : 0u); goto L_08821DC8; L_08821DC8: if (ctx.gpr[8] != 0u) { aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[14])); goto L_08821EF4; } goto L_08821DD0; L_08821DD0: if (ctx.gpr[18] != 0u) { aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[14])); goto L_08821EF4; } goto L_08821DD8; L_08821DD8: ctx.gpr[8] = (ctx.gpr[4] | 0u); ctx.gpr[11] = (ctx.gpr[8] + ctx.gpr[10]); ctx.gpr[2] = (ctx.gpr[11] << 6u); ctx.gpr[11] = (ctx.gpr[11] << 3u); ctx.gpr[9] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[8]) ? 1u : 0u); ctx.gpr[11] = (ctx.gpr[2] - ctx.gpr[11]); goto L_08821DF0; L_08821DF0: { const bool branch_taken = ctx.gpr[9] != 0u; // nop if (branch_taken) { goto L_08821EE4; } goto L_08821DF8; } L_08821DF8: { const bool branch_taken = ctx.gpr[18] != 0u; // nop if (branch_taken) { goto L_08821EE4; } goto L_08821E00; } L_08821E00: ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-25496))); ctx.gpr[9] = (ctx.gpr[9] + ctx.gpr[11]); ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[9] + static_cast(12))); goto L_08821E0C; L_08821E0C: { const bool branch_taken = ctx.gpr[9] == 0u; // nop if (branch_taken) { goto L_08821ED4; } goto L_08821E14; } L_08821E14: { const bool branch_taken = ctx.gpr[18] != 0u; // nop if (branch_taken) { goto L_08821ED4; } goto L_08821E1C; } L_08821E1C: ctx.gpr[2] = (aot_mem.aot_load32(ctx.gpr[9] + static_cast(0))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[2] = (ctx.gpr[2] + static_cast(48)); ctx.fpr[18] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[2] + static_cast(0))); ctx.fpr[19] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[2] + static_cast(4))); ctx.fpr[17] = ctx.fpr[18] - ctx.fpr[17]; ctx.fpr[0] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[19] = ctx.fpr[19] - ctx.fpr[0]; { const float fs = ctx.fpr[17]; const float ft = ctx.fpr[17]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[2] = std::bit_cast(0x7FC00000u); else ctx.fpr[2] = fs * ft; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[17])); { const float fs = ctx.fpr[19]; const float ft = ctx.fpr[19]; 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; } ctx.fpr[17] = ctx.fpr[2] + ctx.fpr[17]; ctx.set_fpu_condition((ctx.fpr[17] <= ctx.fpr[20])); // nop { const bool branch_taken = ctx.fpu_condition(); aot_mem.aot_store32(ctx.gpr[29] + static_cast(60), std::bit_cast(ctx.fpr[19])); if (branch_taken) { goto L_08821E64; } goto L_08821E5C; } L_08821E5C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08821ECC; } goto L_08821E64; } L_08821E64: ctx.set_fpu_condition((!(std::isnan(ctx.fpr[17]) || std::isnan(ctx.fpr[12])) && ctx.fpr[17] == ctx.fpr[12])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821E98; } goto L_08821E74; } L_08821E74: ctx.fpr[14] = std::sqrt(ctx.fpr[17]); ctx.fpr[14] = ctx.fpr[13] / ctx.fpr[14]; ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); { const float fs = ctx.fpr[15]; const float ft = ctx.fpr[14]; 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_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[15])); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(60))); { const float fs = ctx.fpr[15]; const float ft = ctx.fpr[14]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[14] = std::bit_cast(0x7FC00000u); else ctx.fpr[14] = fs * ft; } { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[29] + static_cast(60), std::bit_cast(ctx.fpr[14])); if (branch_taken) { goto L_08821E9C; } goto L_08821E98; } L_08821E98: ctx.gpr[18] = (0u | 1u); goto L_08821E9C; L_08821E9C: ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(0))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); ctx.fpr[18] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(60))); { const float fs = ctx.fpr[17]; const float ft = ctx.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; } { const float fs = ctx.fpr[18]; const float ft = ctx.fpr[15]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[18] = std::bit_cast(0x7FC00000u); else ctx.fpr[18] = fs * ft; } ctx.fpr[17] = ctx.fpr[17] + ctx.fpr[18]; ctx.set_fpu_condition((ctx.fpr[17] <= ctx.fpr[16])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08821ECC; } goto L_08821EC8; } L_08821EC8: ctx.gpr[18] = (0u | 1u); goto L_08821ECC; L_08821ECC: { const bool branch_taken = 0u == 0u; ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[9] + static_cast(8))); if (branch_taken) { goto L_08821E0C; } goto L_08821ED4; } L_08821ED4: ctx.gpr[8] = (ctx.gpr[8] + static_cast(1)); ctx.gpr[11] = (ctx.gpr[11] + static_cast(56)); { const bool branch_taken = 0u == 0u; ctx.gpr[9] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[8]) ? 1u : 0u); if (branch_taken) { goto L_08821DF0; } goto L_08821EE4; } L_08821EE4: ctx.gpr[7] = (ctx.gpr[7] + static_cast(1)); ctx.gpr[10] = (ctx.gpr[10] + static_cast(50)); { const bool branch_taken = 0u == 0u; ctx.gpr[8] = (static_cast(ctx.gpr[6]) < static_cast(ctx.gpr[7]) ? 1u : 0u); if (branch_taken) { goto L_08821DC8; } goto L_08821EF4; } L_08821EF4: aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[15])); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[19] + static_cast(1929)))))); goto L_08821EFC; L_08821EFC: ctx.gpr[16] = (0u | 0u); ctx.gpr[5] = (ctx.gpr[4] << 5u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[19] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + static_cast(1396)); ctx.gpr[31] = (0x08821F1Cu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); if (rt.invoke_chained_direct<&recomp_unit_0198_entry, 198u, 733u, 0x08B1FD70u>(ctx, &aot_mem) && ctx.pc == 0x08821F1Cu) goto L_08821F1C; return; L_08821F1C: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[19] + static_cast(1929)))))); ctx.gpr[5] = (ctx.gpr[4] << 5u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[19] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + static_cast(1396)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30596))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30600))); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[4]) >> 31u)); ctx.gpr[8] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[7] | 0u); ctx.gpr[4] = (ctx.gpr[6] | 0u); ctx.gpr[31] = (0x08821F58u); ctx.gpr[6] = (ctx.gpr[8] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 178u, 0x08B60E84u>(ctx, &aot_mem) && ctx.pc == 0x08821F58u) goto L_08821F58; return; L_08821F58: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30524))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30528))); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30580))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30584))); ctx.gpr[5] = (ctx.gpr[3] & ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[2] & ctx.gpr[4]); aot_mem.aot_store8(ctx.gpr[29] + static_cast(168), static_cast(ctx.gpr[16])); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[6]; // nop if (branch_taken) { goto L_08821F84; } goto L_08821F7C; } L_08821F7C: { const bool branch_taken = ctx.gpr[5] == ctx.gpr[7]; // nop if (branch_taken) { goto L_0882203C; } goto L_08821F84; } L_08821F84: ctx.gpr[31] = (0x08821F8Cu); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08821F8Cu) goto L_08821F8C; return; L_08821F8C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08821FAC; } goto L_08821F94; } L_08821F94: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[19] + static_cast(3262)))))); ctx.gpr[4] = (ctx.gpr[4] & 8u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_0882203C; } goto L_08821FAC; } L_08821FAC: ctx.gpr[31] = (0x08821FB4u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08821FB4u) goto L_08821FB4; return; L_08821FB4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[16] = (0u | 0u); if (branch_taken) { goto L_08821FE8; } goto L_08821FC4; } L_08821FC4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[5] = (ctx.gpr[5] & 14u); ctx.gpr[5] = (ctx.gpr[5] ^ 6u); ctx.gpr[5] = (ctx.gpr[5] < static_cast(1) ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_08821FE8; } goto L_08821FE4; } L_08821FE4: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); goto L_08821FE8; L_08821FE8: ctx.gpr[6] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[31] = (0x08821FF8u); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0055_entry, 55u, 313u, 0x088E2C98u>(ctx, &aot_mem) && ctx.pc == 0x08821FF8u) goto L_08821FF8; return; L_08821FF8: ctx.gpr[4] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882203C; } goto L_08822004; } L_08822004: ctx.gpr[5] = (0u | 1u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08822034; } goto L_08822010; } L_08822010: { const bool branch_taken = ctx.gpr[16] != 0u; // nop if (branch_taken) { goto L_0882203C; } goto L_08822018; } L_08822018: ctx.gpr[31] = (0x08822020u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08822020u) goto L_08822020; return; L_08822020: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08822034; } goto L_08822028; } L_08822028: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(1156))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_0882203C; } goto L_08822034; } L_08822034: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(168), static_cast(ctx.gpr[4])); goto L_0882203C; L_0882203C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(2228))); ctx.gpr[5] = (0u | 17u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_0882230C; } goto L_0882204C; } L_0882204C: aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), ctx.gpr[21]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 512u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[16] = (0u | 0u); if (branch_taken) { goto L_08822164; } goto L_08822068; } L_08822068: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(236))); ctx.gpr[4] = (ctx.gpr[4] & 256u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822088; } goto L_08822080; } L_08822080: { const bool branch_taken = 0u == 0u; ctx.gpr[16] = (0u | 1u); if (branch_taken) { goto L_08822118; } goto L_08822088; } L_08822088: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[19] + static_cast(328))); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08822118; } goto L_088220A0; } L_088220A0: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[19] + static_cast(86)))))); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(24))); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(20))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(12))); ctx.gpr[4] = (16288u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[13]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } ctx.gpr[4] = (ctx.gpr[19] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(72))); ctx.fpr[12] = ctx.fpr[14] - ctx.fpr[12]; ctx.gpr[5] = (ctx.gpr[29] + static_cast(80)); ctx.gpr[6] = (ctx.gpr[29] + static_cast(112)); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (0u | 1u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 1u); ctx.gpr[11] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), 0u); ctx.gpr[31] = (0x0882210Cu); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), 0u); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 287u, 0x08891DD4u>(ctx, &aot_mem) && ctx.pc == 0x0882210Cu) goto L_0882210C; return; L_0882210C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822118; } goto L_08822114; } L_08822114: ctx.gpr[16] = (0u | 1u); goto L_08822118; L_08822118: aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), ctx.gpr[21]); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[6] = (0u | 21u); ctx.gpr[31] = (0x08822130u); ctx.gpr[7] = (ctx.gpr[16] | 0u); goto L_08821B0C; L_08822130: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822164; } goto L_08822138; } L_08822138: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[21] + static_cast(4))); ctx.gpr[5] = (32u << 16u); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); { const bool branch_taken = ctx.gpr[4] == 0u; aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), ctx.gpr[21]); if (branch_taken) { goto L_08822164; } goto L_0882214C; } L_0882214C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(456))); ctx.gpr[5] = (0u + static_cast(-4097)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), ctx.gpr[21]); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[19] + static_cast(456), ctx.gpr[4]); ctx.gpr[30] = (0u | 1u); goto L_08822164; L_08822164: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[17] = (0u | 0u); ctx.gpr[21] = (0u | 0u); ctx.gpr[22] = (0u | 0u); ctx.gpr[23] = (0u | 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[16] = (0u | 0u); if (branch_taken) { goto L_08822264; } goto L_08822180; } L_08822180: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822240; } goto L_088221A0; } L_088221A0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[5] = (ctx.gpr[19] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(128)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 0u, 0u, 3u>(); ctx.gpr[5] = (ctx.vfpu_scalar_bits_ct<28u>()); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[5] = (16686u << 16u); ctx.gpr[5] = (ctx.gpr[5] | 15728u); ctx.fpr[13] = std::bit_cast(ctx.gpr[5]); ctx.set_fpu_condition((ctx.fpr[13] <= ctx.fpr[12])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_088221F0; } goto L_088221EC; } L_088221EC: ctx.gpr[17] = (0u | 1u); goto L_088221F0; L_088221F0: ctx.gpr[5] = (16656u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[5]); ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[12])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_0882220C; } goto L_08822208; } L_08822208: ctx.gpr[21] = (0u | 1u); goto L_0882220C; L_0882220C: ctx.gpr[5] = (16419u << 16u); ctx.gpr[5] = (ctx.gpr[5] | 55051u); ctx.fpr[13] = std::bit_cast(ctx.gpr[5]); ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[12])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_0882222C; } goto L_08822228; } L_08822228: ctx.gpr[22] = (0u | 1u); goto L_0882222C; L_0882222C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(460))); ctx.gpr[4] = (ctx.gpr[4] & 8192u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822240; } goto L_0882223C; } L_0882223C: ctx.gpr[16] = (0u | 1u); goto L_08822240; L_08822240: ctx.gpr[31] = (0x08822248u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08822248u) goto L_08822248; return; L_08822248: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822264; } goto L_08822250; } L_08822250: ctx.gpr[31] = (0x08822258u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0081_entry, 81u, 80u, 0x0894854Cu>(ctx, &aot_mem) && ctx.pc == 0x08822258u) goto L_08822258; return; L_08822258: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822264; } goto L_08822260; } L_08822260: ctx.gpr[23] = (0u | 1u); goto L_08822264; L_08822264: ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(164))); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[19] | 0u); ctx.gpr[6] = (0u | 27u); ctx.gpr[31] = (0x0882227Cu); ctx.gpr[7] = (ctx.gpr[16] | 0u); goto L_08821B0C; L_0882227C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822288; } goto L_08822284; } L_08822284: ctx.gpr[30] = (0u | 1u); goto L_08822288; L_08822288: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[19] | 0u); ctx.gpr[6] = (0u | 22u); ctx.gpr[31] = (0x0882229Cu); ctx.gpr[7] = (ctx.gpr[17] | 0u); goto L_08821B0C; L_0882229C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088222A8; } goto L_088222A4; } L_088222A4: ctx.gpr[30] = (0u | 1u); goto L_088222A8; L_088222A8: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[19] | 0u); ctx.gpr[6] = (0u | 23u); ctx.gpr[31] = (0x088222BCu); ctx.gpr[7] = (ctx.gpr[21] | 0u); goto L_08821B0C; L_088222BC: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088222C8; } goto L_088222C4; } L_088222C4: ctx.gpr[30] = (0u | 1u); goto L_088222C8; L_088222C8: ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(164))); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[6] = (0u | 24u); ctx.gpr[31] = (0x088222E0u); ctx.gpr[7] = (ctx.gpr[22] | 0u); goto L_08821B0C; L_088222E0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088222EC; } goto L_088222E8; } L_088222E8: ctx.gpr[30] = (0u | 1u); goto L_088222EC; L_088222EC: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[6] = (0u | 25u); ctx.gpr[31] = (0x08822300u); ctx.gpr[7] = (ctx.gpr[23] | 0u); goto L_08821B0C; L_08822300: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882230C; } goto L_08822308; } L_08822308: ctx.gpr[30] = (0u | 1u); goto L_0882230C; L_0882230C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822398; } goto L_08822318; } L_08822318: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822358; } goto L_08822338; } L_08822338: ctx.gpr[31] = (0x08822340u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 391u, 0x08911750u>(ctx, &aot_mem) && ctx.pc == 0x08822340u) goto L_08822340; return; L_08822340: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822350; } goto L_08822348; } L_08822348: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(169), static_cast(ctx.gpr[4])); goto L_08822350; L_08822350: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822398; } goto L_08822358; } L_08822358: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822398; } goto L_08822364; } L_08822364: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 14u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822398; } goto L_08822384; } L_08822384: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(-1040))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822398; } goto L_08822390; } L_08822390: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(169), static_cast(ctx.gpr[4])); goto L_08822398; L_08822398: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_088223AC; } goto L_088223A4; } L_088223A4: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(171), static_cast(ctx.gpr[4])); goto L_088223AC; L_088223AC: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(170))); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x088223C0u); ctx.gpr[6] = (0u | 15u); goto L_08821B0C; L_088223C0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088223CC; } goto L_088223C8; } L_088223C8: ctx.gpr[30] = (0u | 1u); goto L_088223CC; L_088223CC: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[6] = (0u | 28u); ctx.gpr[31] = (0x088223E0u); ctx.gpr[7] = (ctx.gpr[18] | 0u); goto L_08821B0C; L_088223E0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088223EC; } goto L_088223E8; } L_088223E8: ctx.gpr[30] = (0u | 1u); goto L_088223EC; L_088223EC: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(168))); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08822400u); ctx.gpr[6] = (0u | 26u); goto L_08821B0C; L_08822400: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882240C; } goto L_08822408; } L_08822408: ctx.gpr[30] = (0u | 1u); goto L_0882240C; L_0882240C: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(169))); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08822420u); ctx.gpr[6] = (0u | 29u); goto L_08821B0C; L_08822420: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882242C; } goto L_08822428; } L_08822428: ctx.gpr[30] = (0u | 1u); goto L_0882242C; L_0882242C: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(171))); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08822440u); ctx.gpr[6] = (0u | 30u); goto L_08821B0C; L_08822440: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882244C; } goto L_08822448; } L_08822448: ctx.gpr[30] = (0u | 1u); goto L_0882244C; L_0882244C: ctx.gpr[2] = (ctx.gpr[30] | 0u); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(172))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(176))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(180))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(184))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(188))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(192))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(196))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(200))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(204))); ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(208))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(212))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(224)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08822484: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-368)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(-1040))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(304), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(320), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(332), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(336), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(348), ctx.gpr[23]); ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.gpr[23] = (ctx.gpr[5] | 0u); ctx.gpr[19] = (ctx.gpr[6] | 0u); ctx.gpr[16] = (ctx.gpr[7] | 0u); ctx.gpr[20] = (ctx.gpr[8] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(308), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(312), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(316), std::bit_cast(ctx.fpr[26])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(324), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(328), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(340), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(344), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(352), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[22] = (ctx.gpr[9] | 0u); if (branch_taken) { goto L_08822500; } goto L_088224DC; } L_088224DC: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(72))); ctx.gpr[5] = (ctx.gpr[5] & 14u); ctx.gpr[5] = (ctx.gpr[5] ^ 6u); ctx.gpr[5] = (ctx.gpr[5] < static_cast(1) ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] != 0u; ctx.gpr[4] = (0u | 0u); if (branch_taken) { goto L_08822508; } goto L_088224F8; } L_088224F8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822548; } goto L_08822500; } L_08822500: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822B84; } goto L_08822508; } L_08822508: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(92))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(224)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08822520u); ctx.gpr[4] = (ctx.gpr[23] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822520u) goto L_08822520; return; L_08822520: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08822538u); ctx.gpr[4] = (ctx.gpr[2] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822538u) goto L_08822538; return; L_08822538: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(2228))); ctx.gpr[17] = (ctx.gpr[2] | 0u); { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (ctx.gpr[4] & 255u); if (branch_taken) { goto L_088225B0; } goto L_08822548; } L_08822548: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(72))); ctx.gpr[5] = (ctx.gpr[5] & 14u); ctx.gpr[5] = (ctx.gpr[5] ^ 14u); ctx.gpr[5] = (ctx.gpr[5] < static_cast(1) ? 1u : 0u); ctx.gpr[5] = (ctx.gpr[5] & 255u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088225B0; } goto L_08822564; } L_08822564: ctx.gpr[17] = (ctx.gpr[23] | 0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(352))); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088225AC; } goto L_08822574; } L_08822574: ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(352))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(96))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(96))); goto L_088225A4; } goto L_08822584; L_08822584: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[17] + static_cast(10)))))); ctx.gpr[6] = (ctx.gpr[29] + static_cast(224)); ctx.gpr[31] = (0x08822594u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem) && ctx.pc == 0x08822594u) goto L_08822594; return; L_08822594: aot_mem.aot_store32(ctx.gpr[17] + static_cast(96), ctx.gpr[2]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(224))); aot_mem.aot_store8(ctx.gpr[17] + static_cast(4), static_cast(ctx.gpr[4])); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(96))); goto L_088225A4; L_088225A4: ctx.gpr[4] = (ctx.gpr[4] + static_cast(180)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); goto L_088225AC; L_088225AC: ctx.gpr[17] = (0u + static_cast(-1)); goto L_088225B0; L_088225B0: ctx.gpr[5] = (0u | 58u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08822664; } goto L_088225BC; } L_088225BC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(80))); ctx.gpr[31] = (0x088225C8u); ctx.gpr[5] = (0u | 4096u); if (rt.invoke_chained_direct<&recomp_unit_0026_entry, 26u, 211u, 0x0886D4F4u>(ctx, &aot_mem) && ctx.pc == 0x088225C8u) goto L_088225C8; return; L_088225C8: ctx.gpr[4] = (16640u << 16u); { const bool branch_taken = ctx.gpr[2] == 0u; ctx.fpr[22] = std::bit_cast(ctx.gpr[4]); if (branch_taken) { goto L_08822608; } goto L_088225D4; } L_088225D4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); goto L_088225EC; } goto L_088225E0; L_088225E0: ctx.gpr[31] = (0x088225E8u); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem) && ctx.pc == 0x088225E8u) goto L_088225E8; return; L_088225E8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); goto L_088225EC; L_088225EC: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(80))); ctx.gpr[6] = (0u | 0u); ctx.gpr[31] = (0x08822600u); ctx.gpr[7] = (0u | 42u); if (rt.invoke_chained_direct<&recomp_unit_0078_entry, 78u, 650u, 0x0893EA14u>(ctx, &aot_mem) && ctx.pc == 0x08822600u) goto L_08822600; return; L_08822600: { const bool branch_taken = 0u == 0u; ctx.gpr[18] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08822638; } goto L_08822608; } L_08822608: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); goto L_08822620; } goto L_08822614; L_08822614: ctx.gpr[31] = (0x0882261Cu); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 313u, 0x08B65564u>(ctx, &aot_mem) && ctx.pc == 0x0882261Cu) goto L_0882261C; return; L_0882261C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5836))); goto L_08822620; L_08822620: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[23] + static_cast(80))); ctx.gpr[6] = (0u | 0u); ctx.gpr[31] = (0x08822634u); ctx.gpr[7] = (0u | 40u); if (rt.invoke_chained_direct<&recomp_unit_0078_entry, 78u, 650u, 0x0893EA14u>(ctx, &aot_mem) && ctx.pc == 0x08822634u) goto L_08822634; return; L_08822634: ctx.gpr[18] = (ctx.gpr[2] | 0u); goto L_08822638; L_08822638: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08822664; } goto L_08822640; } L_08822640: ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[31] = (0x0882264Cu); ctx.gpr[4] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 73u, 0x08890474u>(ctx, &aot_mem) && ctx.pc == 0x0882264Cu) goto L_0882264C; return; L_0882264C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[5] = (0u + static_cast(-9)); ctx.gpr[4] = (ctx.gpr[4] | 1u); aot_mem.aot_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[4]); goto L_08822664; L_08822664: ctx.gpr[4] = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[17] == ctx.gpr[4]; // nop if (branch_taken) { goto L_08822698; } goto L_08822670; } L_08822670: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (ctx.gpr[17] << 6u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(44)))))); ctx.gpr[4] = (ctx.gpr[4] & 8u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822724; } goto L_08822698; } L_08822698: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[6] = (ctx.gpr[19] << 6u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088226B0u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[6]); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 350u, 0x0881E290u>(ctx, &aot_mem) && ctx.pc == 0x088226B0u) goto L_088226B0; return; L_088226B0: ctx.gpr[4] = (0u | 25u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), 0u); ctx.gpr[5] = (0u | 60u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[4]); ctx.gpr[4] = (0u | 101u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[5]); ctx.gpr[19] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x088226D4u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[4]); if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 110u, 0x08B20934u>(ctx, &aot_mem) && ctx.pc == 0x088226D4u) goto L_088226D4; return; L_088226D4: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30516))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30520))); ctx.gpr[4] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x088226E8u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 177u, 0x08B60E5Cu>(ctx, &aot_mem) && ctx.pc == 0x088226E8u) goto L_088226E8; return; L_088226E8: ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[1] = (ctx.gpr[3] << 1u); ctx.gpr[6] = (ctx.gpr[2] >> 31u); ctx.gpr[7] = (static_cast(static_cast(ctx.gpr[3]) >> 31u)); ctx.gpr[6] = (ctx.gpr[1] | ctx.gpr[6]); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(16))); ctx.gpr[5] = (ctx.gpr[6] | 0u); ctx.gpr[4] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_0882272C; } goto L_0882271C; } L_0882271C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822B1C; } goto L_08822724; } L_08822724: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822B84; } goto L_0882272C; } L_0882272C: { const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[21] = (ctx.gpr[29] + static_cast(32)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.gpr[4] = (16000u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[12] + ctx.fpr[13]; aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), std::bit_cast(ctx.fpr[12])); { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_value[4]{}; vfpu_value[0u] = 1.0f; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vdot_ct<28u, 1u, 1u, 3u>(); ctx.execute_vfpu_vcmp_ct<28u, 32u, 1u, 3u>(); { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<28u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = 1.0f / std::sqrt(vfpu_s[i]); ctx.write_vfpu_vector_with_destination_prefix_ct<28u, 1u>(vfpu_d); } ctx.execute_vfpu_vscl_ct<1u, 1u, 28u, 3u>(); ctx.execute_vfpu_vcmov_ct<1u, 0u, 3u, 0u, false>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<1u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[22] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (15107u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 4719u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (15205u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 24642u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (15267u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 55050u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(60), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(64), 0u); ctx.gpr[4] = (0u | 2u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(68), ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(72), ctx.gpr[4]); ctx.gpr[4] = (0u | 4u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(76), ctx.gpr[4]); ctx.gpr[16] = (0u | 0u); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 2u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(64))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (15692u << 16u); if (branch_taken) { goto L_088228AC; } goto L_088227E4; } L_088227E4: ctx.gpr[4] = (16230u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 26214u); ctx.fpr[24] = std::bit_cast(ctx.gpr[4]); ctx.gpr[18] = (ctx.gpr[29] + static_cast(128)); ctx.gpr[4] = (16268u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.gpr[17] = (ctx.gpr[29] + static_cast(144)); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); goto L_08822804; L_08822804: ctx.gpr[31] = (0x0882280Cu); // nop if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem) && ctx.pc == 0x0882280Cu) goto L_0882280C; return; L_0882280C: ctx.fpr[12] = ctx.fpr[26] - ctx.fpr[24]; { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } ctx.fpr[12] = ctx.fpr[24] + ctx.fpr[12]; ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 2u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(48))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[13])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[18] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[18] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[17] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[4] = (0u | 8u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[17] | 0u); ctx.gpr[7] = (0u | 0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08822880u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08822880u) goto L_08822880; return; L_08822880: ctx.gpr[16] = (ctx.gpr[16] + static_cast(1)); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 2u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(64))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822804; } goto L_088228A8; } L_088228A8: ctx.gpr[4] = (15692u << 16u); goto L_088228AC; L_088228AC: ctx.gpr[4] = (ctx.gpr[4] | 52429u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), std::bit_cast(ctx.fpr[22])); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (15872u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (15948u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(92), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 4u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (0u | 1u); if (branch_taken) { goto L_08822938; } goto L_088228EC; } L_088228EC: aot_mem.aot_store32(ctx.gpr[29] + static_cast(160), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(168), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[6] = (ctx.gpr[29] + static_cast(160)); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 4u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(80))); ctx.gpr[4] = (0u | 81u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08822934u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08822934u) goto L_08822934; return; L_08822934: ctx.gpr[4] = (0u | 1u); goto L_08822938; L_08822938: aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), 0u); ctx.gpr[5] = (0u | 3u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(100), ctx.gpr[4]); ctx.gpr[4] = (0u | 6u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(104), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(108), ctx.gpr[4]); ctx.gpr[4] = (15395u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 55050u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(112), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (15523u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 55050u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(116), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (15605u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 49807u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(120), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(124), std::bit_cast(ctx.fpr[12])); ctx.gpr[31] = (0x0882298Cu); ctx.gpr[4] = (ctx.gpr[23] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0179_entry, 179u, 50u, 0x08AD0530u>(ctx, &aot_mem) && ctx.pc == 0x0882298Cu) goto L_0882298C; return; L_0882298C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08822B1C; } goto L_08822994; } L_08822994: ctx.gpr[4] = (16230u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 26214u); ctx.fpr[24] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16268u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.gpr[31] = (0x088229B0u); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 113u, 0x08B20998u>(ctx, &aot_mem) && ctx.pc == 0x088229B0u) goto L_088229B0; return; L_088229B0: ctx.fpr[12] = ctx.fpr[26] - ctx.fpr[24]; { const float fs = ctx.fpr[12]; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } ctx.fpr[12] = ctx.fpr[24] + ctx.fpr[12]; ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 6u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(112))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[13])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[4] = (ctx.gpr[29] + static_cast(176)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[5]); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 28u, 3u>(); ctx.gpr[21] = (ctx.gpr[29] + static_cast(192)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[16] = (0u | 0u); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 6u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(96))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822A80; } goto L_08822A2C; } L_08822A2C: ctx.gpr[4] = (0u | 7u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[21] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08822A54u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08822A54u) goto L_08822A54; return; L_08822A54: ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[16] = (ctx.gpr[16] + static_cast(1)); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 6u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(96))); ctx.gpr[16] = (ctx.gpr[16] & 255u); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822A2C; } goto L_08822A80; } L_08822A80: ctx.gpr[4] = (16042u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 43690u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); ctx.set_vfpu_scalar_bits_ct<1u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.execute_vfpu_vscl_ct<0u, 0u, 1u, 3u>(); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[16] = (0u | 0u); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 8u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(96))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822B1C; } goto L_08822AC8; } L_08822AC8: ctx.gpr[4] = (0u | 10u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[21] | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 0u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08822AF0u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08822AF0u) goto L_08822AF0; return; L_08822AF0: ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[16] = (ctx.gpr[16] + static_cast(2)); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 8u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(96))); ctx.gpr[16] = (ctx.gpr[16] & 255u); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822AC8; } goto L_08822B1C; } L_08822B1C: ctx.gpr[31] = (0x08822B24u); // nop if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 110u, 0x08B20934u>(ctx, &aot_mem) && ctx.pc == 0x08822B24u) goto L_08822B24; return; L_08822B24: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30516))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30520))); ctx.gpr[4] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x08822B38u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 177u, 0x08B60E5Cu>(ctx, &aot_mem) && ctx.pc == 0x08822B38u) goto L_08822B38; return; L_08822B38: ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[19] + static_cast(26))); ctx.gpr[1] = (ctx.gpr[3] << 1u); ctx.gpr[6] = (ctx.gpr[2] >> 31u); ctx.gpr[7] = (static_cast(static_cast(ctx.gpr[3]) >> 31u)); ctx.gpr[6] = (ctx.gpr[1] | ctx.gpr[6]); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 10u)); ctx.gpr[4] = (ctx.gpr[4] & 3u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[29] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(16))); ctx.gpr[5] = (ctx.gpr[6] | 0u); ctx.gpr[4] = (static_cast(ctx.gpr[5]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822B84; } goto L_08822B70; } L_08822B70: { const std::uint32_t vfpu_address = ctx.gpr[20] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(208)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[31] = (0x08822B84u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 261u, 0x0882ABA0u>(ctx, &aot_mem) && ctx.pc == 0x08822B84u) goto L_08822B84; return; L_08822B84: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(304))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(308))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(312))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(316))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(320))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(324))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(328))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(332))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(336))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(340))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(344))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(348))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(352))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(368)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08822BC0: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2228))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(236))); ctx.gpr[6] = (ctx.gpr[6] & 256u); ctx.gpr[6] = (0u < ctx.gpr[6] ? 1u : 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); ctx.gpr[19] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[16] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_08822C1C; } goto L_08822BFC; } L_08822BFC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2228))); ctx.gpr[5] = (0u | 17u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08822C14; } goto L_08822C0C; } L_08822C0C: ctx.gpr[31] = (0x08822C14u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 282u, 0x0890905Cu>(ctx, &aot_mem) && ctx.pc == 0x08822C14u) goto L_08822C14; return; L_08822C14: { const bool branch_taken = 0u == 0u; ctx.gpr[19] = (0u | 1u); if (branch_taken) { goto L_08822CA4; } goto L_08822C1C; } L_08822C1C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822CA4; } goto L_08822C34; } L_08822C34: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 512u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822CA4; } goto L_08822C4C; } L_08822C4C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(460))); ctx.gpr[4] = (ctx.gpr[4] & 8192u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822C64; } goto L_08822C5C; } L_08822C5C: { const bool branch_taken = 0u == 0u; ctx.gpr[19] = (0u | 1u); if (branch_taken) { goto L_08822CA4; } goto L_08822C64; } L_08822C64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(456))); ctx.gpr[4] = (ctx.gpr[4] & 4096u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822C84; } goto L_08822C74; } L_08822C74: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(456))); ctx.gpr[4] = (ctx.gpr[4] & 8192u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822CA4; } goto L_08822C84; } L_08822C84: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822CA0; } goto L_08822C90; } L_08822C90: ctx.gpr[31] = (0x08822C98u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 321u, 0x08911220u>(ctx, &aot_mem) && ctx.pc == 0x08822C98u) goto L_08822C98; return; L_08822C98: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08822CA4; } goto L_08822CA0; } L_08822CA0: ctx.gpr[19] = (0u | 1u); goto L_08822CA4; L_08822CA4: ctx.gpr[31] = (0x08822CACu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 751u, 0x0890F43Cu>(ctx, &aot_mem) && ctx.pc == 0x08822CACu) goto L_08822CAC; return; L_08822CAC: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08822CE8; } goto L_08822CB4; } L_08822CB4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08822CCCu); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822CCCu) goto L_08822CCC; return; L_08822CCC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(28)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(11))); { const bool branch_taken = ctx.gpr[2] == ctx.gpr[4]; // nop if (branch_taken) { goto L_08822D28; } goto L_08822CE0; } L_08822CE0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822D2C; } goto L_08822CE8; } L_08822CE8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08822D0Cu); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822D0Cu) goto L_08822D0C; return; L_08822D0C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 11u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822D20u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822D20u) goto L_08822D20; return; L_08822D20: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08822D28; } L_08822D28: ctx.gpr[19] = (0u | 1u); goto L_08822D2C; L_08822D2C: { const bool branch_taken = ctx.gpr[19] != 0u; // nop if (branch_taken) { goto L_08822D48; } goto L_08822D34; } L_08822D34: ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 18 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 4 ? 1u : 0u); if (branch_taken) { goto L_08822D88; } goto L_08822D40; } L_08822D40: { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 47 ? 1u : 0u); if (branch_taken) { goto L_08822E0C; } goto L_08822D48; } L_08822D48: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08822D6Cu); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822D6Cu) goto L_08822D6C; return; L_08822D6C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822D80u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822D80u) goto L_08822D80; return; L_08822D80: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08822D88; } L_08822D88: { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 10 ? 1u : 0u); if (branch_taken) { goto L_08822DA8; } goto L_08822D90; } L_08822D90: { const bool branch_taken = static_cast(ctx.gpr[18]) <= 0; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 2 ? 1u : 0u); if (branch_taken) { goto L_08823068; } goto L_08822D98; } L_08822D98: { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08822F3C; } goto L_08822DA0; } L_08822DA0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08822DA8; } L_08822DA8: { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 16 ? 1u : 0u); if (branch_taken) { goto L_08822DFC; } goto L_08822DB0; } L_08822DB0: ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 8 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822DBC; } L_08822DBC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08822DE0u); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822DE0u) goto L_08822DE0; return; L_08822DE0: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 3u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822DF4u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822DF4u) goto L_08822DF4; return; L_08822DF4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08822DFC; } L_08822DFC: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822DA0; } goto L_08822E04; } L_08822E04: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822E0C; } L_08822E0C: { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 58 ? 1u : 0u); if (branch_taken) { goto L_08822E58; } goto L_08822E14; } L_08822E14: ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 28 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 45 ? 1u : 0u); if (branch_taken) { goto L_08822E34; } goto L_08822E20; } L_08822E20: ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 27 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822E2C; } L_08822E2C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822F3C; } goto L_08822E34; } L_08822E34: { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822E3C; } L_08822E3C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822E50u); ctx.gpr[7] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822E50u) goto L_08822E50; return; L_08822E50: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08822E58; } L_08822E58: { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 59 ? 1u : 0u); if (branch_taken) { goto L_08822E74; } goto L_08822E60; } L_08822E60: ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 57 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822E6C; } L_08822E6C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08822EC8; } goto L_08822E74; } L_08822E74: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823068; } goto L_08822E7C; } L_08822E7C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08822EA0u); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822EA0u) goto L_08822EA0; return; L_08822EA0: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 4u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822EB4u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822EB4u) goto L_08822EB4; return; L_08822EB4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(456))); ctx.gpr[5] = (0u + static_cast(-4097)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(456), ctx.gpr[4]); if (branch_taken) { goto L_088230A0; } goto L_08822EC8; } L_08822EC8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] & 1024u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08822EF0; } goto L_08822EE0; } L_08822EE0: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822EF0u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 583u, 0x0881F474u>(ctx, &aot_mem) && ctx.pc == 0x08822EF0u) goto L_08822EF0; return; L_08822EF0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x08822F14u); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822F14u) goto L_08822F14; return; L_08822F14: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 5u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822F28u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822F28u) goto L_08822F28; return; L_08822F28: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(456))); ctx.gpr[5] = (0u + static_cast(-4097)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(456), ctx.gpr[4]); if (branch_taken) { goto L_088230A0; } goto L_08822F3C; } L_08822F3C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); goto L_08822FA4; } goto L_08822F48; L_08822F48: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08822F60u); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08822F60u) goto L_08822F60; return; L_08822F60: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (ctx.gpr[2] << 6u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(42)))))); ctx.gpr[4] = (ctx.gpr[4] & 16u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823060; } goto L_08822F88; } L_08822F88: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08822F9Cu); ctx.gpr[7] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08822F9Cu) goto L_08822F9C; return; L_08822F9C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08823060; } goto L_08822FA4; } L_08822FA4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823060; } goto L_08822FC0; } L_08822FC0: ctx.gpr[31] = (0x08822FC8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08822FC8u) goto L_08822FC8; return; L_08822FC8: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08823060; } goto L_08822FD0; } L_08822FD0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[5] = (0u | 58u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(2228)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08823060; } goto L_08822FE8; } L_08822FE8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08823000u); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08823000u) goto L_08823000; return; L_08823000: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (ctx.gpr[2] << 6u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(42)))))); ctx.gpr[4] = (ctx.gpr[4] & 16u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823060; } goto L_08823028; } L_08823028: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x0882304Cu); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882304Cu) goto L_0882304C; return; L_0882304C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08823060u); ctx.gpr[7] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x08823060u) goto L_08823060; return; L_08823060: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088230A0; } goto L_08823068; } L_08823068: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(40)); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[6]); ctx.gpr[6] = (0u | 0u); jump_target = ctx.gpr[8]; ctx.gpr[31] = (0x0882308Cu); ctx.gpr[7] = (0u | 1u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882308Cu) goto L_0882308C; return; L_0882308C: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088230A0u); ctx.gpr[7] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 613u, 0x0881F6CCu>(ctx, &aot_mem) && ctx.pc == 0x088230A0u) goto L_088230A0; return; L_088230A0: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(32)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088230BC: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-112)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(68), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(72), ctx.gpr[18]); ctx.gpr[17] = (ctx.gpr[4] | 0u); ctx.gpr[18] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(64), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), ctx.gpr[21]); ctx.gpr[21] = (ctx.gpr[7] | 0u); ctx.gpr[16] = (ctx.gpr[6] | 0u); ctx.gpr[4] = (ctx.gpr[18] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(76), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(92), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), ctx.gpr[31]); ctx.gpr[31] = (0x08823100u); ctx.gpr[5] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 348u, 0x0881E25Cu>(ctx, &aot_mem) && ctx.pc == 0x08823100u) goto L_08823100; return; L_08823100: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x0882310Cu); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 340u, 0x0881E1C0u>(ctx, &aot_mem) && ctx.pc == 0x0882310Cu) goto L_0882310C; return; L_0882310C: ctx.gpr[20] = (ctx.gpr[2] | 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[20] + static_cast(12))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[5] << 6u); ctx.gpr[18] = (ctx.gpr[18] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08823130u); ctx.gpr[5] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 348u, 0x0881E25Cu>(ctx, &aot_mem) && ctx.pc == 0x08823130u) goto L_08823130; return; L_08823130: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[23] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08823164; } goto L_0882313C; } L_0882313C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 6u); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823164; } goto L_0882315C; } L_0882315C: { const bool branch_taken = 0u == 0u; ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); if (branch_taken) { goto L_08823168; } goto L_08823164; } L_08823164: ctx.gpr[22] = (0u | 0u); goto L_08823168; L_08823168: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[21] + static_cast(236))); ctx.gpr[4] = (ctx.gpr[4] & 256u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088231A0; } goto L_08823180; } L_08823180: { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_088231A0; } goto L_08823188; } L_08823188: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[20] + static_cast(12))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(28)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[4]; // nop if (branch_taken) { goto L_088231C0; } goto L_088231A0; } L_088231A0: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[18] + static_cast(42)))))); ctx.gpr[4] = (ctx.gpr[4] & 16u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_088231C8; } goto L_088231B8; } L_088231B8: { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[21] + static_cast(1929)))))); if (branch_taken) { goto L_088231D8; } goto L_088231C0; } L_088231C0: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 14u); if (branch_taken) { goto L_08823490; } goto L_088231C8; } L_088231C8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088232A0; } goto L_088231D4; } L_088231D4: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[21] + static_cast(1929)))))); goto L_088231D8; L_088231D8: ctx.gpr[5] = (ctx.gpr[21] + static_cast(1396)); ctx.gpr[6] = (ctx.gpr[4] << 5u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[6] - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30596))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30600))); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[4]) >> 31u)); ctx.gpr[8] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[7] | 0u); ctx.gpr[4] = (ctx.gpr[6] | 0u); ctx.gpr[31] = (0x08823210u); ctx.gpr[6] = (ctx.gpr[8] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 178u, 0x08B60E84u>(ctx, &aot_mem) && ctx.pc == 0x08823210u) goto L_08823210; return; L_08823210: ctx.gpr[4] = (17279u << 16u); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(0))); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[12] / ctx.fpr[13]; ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[23] + static_cast(4))); ctx.gpr[5] = (ctx.gpr[3] | 0u); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[14])); // nop { const bool branch_taken = ctx.fpu_condition(); ctx.gpr[4] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_08823298; } goto L_08823238; } L_08823238: { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_08823290; } goto L_08823240; } L_08823240: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(4))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(60), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), ctx.gpr[4]); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30580))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30584))); ctx.gpr[5] = (ctx.gpr[7] & ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[6] & ctx.gpr[4]); ctx.gpr[16] = (0u | 4u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[18]; // nop if (branch_taken) { goto L_08823274; } goto L_0882326C; } L_0882326C: { const bool branch_taken = ctx.gpr[5] == ctx.gpr[19]; // nop if (branch_taken) { goto L_08823288; } goto L_08823274; } L_08823274: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_088232A8; } goto L_08823280; } L_08823280: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088233A4; } goto L_08823288; } L_08823288: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_08823490; } goto L_08823290; } L_08823290: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08823490; } goto L_08823298; } L_08823298: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 3u); if (branch_taken) { goto L_08823490; } goto L_088232A0; } L_088232A0: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 9u); if (branch_taken) { goto L_08823490; } goto L_088232A8; } L_088232A8: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[20] + static_cast(15)))))); ctx.gpr[4] = (ctx.gpr[4] & 7u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[16]; // nop if (branch_taken) { goto L_08823310; } goto L_088232B8; } L_088232B8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[5] = (ctx.gpr[21] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<1u, 4u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 3u, 0u>(vfpu_s); ctx.read_vfpu_vector_with_source_prefix_ct<1u, 3u, 1u>(vfpu_t); for (std::uint32_t i = 0; i < 3u; ++i) vfpu_d[i] = vfpu_s[i] - vfpu_t[i]; ctx.write_vfpu_vector_with_destination_prefix_ct<0u, 3u>(vfpu_d); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[29] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[31] = (0x088232E8u); ctx.gpr[5] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 658u, 0x08A6734Cu>(ctx, &aot_mem) && ctx.pc == 0x088232E8u) goto L_088232E8; return; L_088232E8: ctx.gpr[4] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[16]; // nop if (branch_taken) { goto L_08823310; } goto L_088232F4; } L_088232F4: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[20] + static_cast(15)))))); ctx.gpr[31] = (0x08823300u); ctx.gpr[5] = (ctx.gpr[5] & 7u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 317u, 0x0881E0E4u>(ctx, &aot_mem) && ctx.pc == 0x08823300u) goto L_08823300; return; L_08823300: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08823310; } goto L_08823308; } L_08823308: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 5u); if (branch_taken) { goto L_08823490; } goto L_08823310; } L_08823310: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(60))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30524))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30528))); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[7]); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[6]); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[18]; // nop if (branch_taken) { goto L_08823338; } goto L_08823330; } L_08823330: { const bool branch_taken = ctx.gpr[5] == ctx.gpr[19]; // nop if (branch_taken) { goto L_0882338C; } goto L_08823338; } L_08823338: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08823350u); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08823350u) goto L_08823350; return; L_08823350: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[5] = (ctx.gpr[2] << 6u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(44)))))); ctx.gpr[4] = (ctx.gpr[4] & 4u); ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_0882338C; } goto L_08823378; } L_08823378: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.gpr[31] = (0x08823384u); ctx.gpr[4] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0056_entry, 56u, 103u, 0x088E4830u>(ctx, &aot_mem) && ctx.pc == 0x08823384u) goto L_08823384; return; L_08823384: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882339C; } goto L_0882338C; } L_0882338C: { const bool branch_taken = ctx.gpr[22] != 0u; // nop if (branch_taken) { goto L_088233BC; } goto L_08823394; } L_08823394: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_0882347C; } goto L_0882339C; } L_0882339C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 12u); if (branch_taken) { goto L_08823490; } goto L_088233A4; } L_088233A4: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[20] + static_cast(15)))))); ctx.gpr[4] = (ctx.gpr[4] & 7u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[16]; // nop if (branch_taken) { goto L_0882338C; } goto L_088233B4; } L_088233B4: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 5u); if (branch_taken) { goto L_08823490; } goto L_088233BC; } L_088233BC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(92))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(216)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x088233D4u); ctx.gpr[4] = (ctx.gpr[22] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x088233D4u) goto L_088233D4; return; L_088233D4: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x088233E0u); ctx.gpr[5] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 359u, 0x0881E334u>(ctx, &aot_mem) && ctx.pc == 0x088233E0u) goto L_088233E0; return; L_088233E0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0882346C; } goto L_088233E8; } L_088233E8: ctx.gpr[31] = (0x088233F0u); ctx.gpr[4] = (ctx.gpr[22] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 391u, 0x08911750u>(ctx, &aot_mem) && ctx.pc == 0x088233F0u) goto L_088233F0; return; L_088233F0: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08823464; } goto L_088233F8; } L_088233F8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(92))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-30640))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(216)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08823414u); ctx.gpr[4] = (ctx.gpr[22] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08823414u) goto L_08823414; return; L_08823414: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(36))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x0882342Cu); ctx.gpr[4] = (ctx.gpr[2] + ctx.gpr[5]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x0882342Cu) goto L_0882342C; return; L_0882342C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[31] = (0x0882343Cu); ctx.gpr[6] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0006_entry, 6u, 309u, 0x0881E044u>(ctx, &aot_mem) && ctx.pc == 0x0882343Cu) goto L_0882343C; return; L_0882343C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08823464; } goto L_08823444; } L_08823444: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[23] + static_cast(20))); ctx.fpr[12] = std::bit_cast(0u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[13] = static_cast(static_cast(std::bit_cast(ctx.fpr[13]))); ctx.set_fpu_condition((ctx.fpr[13] <= ctx.fpr[12])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08823474; } goto L_08823464; } L_08823464: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08823490; } goto L_0882346C; } L_0882346C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 6u); if (branch_taken) { goto L_08823490; } goto L_08823474; } L_08823474: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 8u); if (branch_taken) { goto L_08823490; } goto L_0882347C; } L_0882347C: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[20] + static_cast(14))); ctx.gpr[5] = (0u | 255u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08823464; } goto L_0882348C; } L_0882348C: ctx.gpr[2] = (0u | 6u); goto L_08823490; L_08823490: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(64))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(68))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(72))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(76))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(80))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(84))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(88))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(92))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(112)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088234BC: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[4] = (0u | 255u); ctx.gpr[5] = (2233u << 16u); aot_mem.aot_store8(ctx.gpr[5] + static_cast(-22728), static_cast(ctx.gpr[4])); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-22728)); aot_mem.aot_store8(ctx.gpr[5] + static_cast(1), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[5] + static_cast(2), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[5] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(4)); ctx.gpr[7] = (0u | 127u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(8)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(12)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(16)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(20)); ctx.gpr[8] = (0u | 31u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[8])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[8])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[8])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(24)); ctx.gpr[9] = (0u | 47u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(28)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(32)); ctx.gpr[10] = (0u | 159u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(36)); ctx.gpr[11] = (0u | 191u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(40)); ctx.gpr[2] = (0u | 223u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(44)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(48)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[10])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(52)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(56)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[2])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(60)); ctx.gpr[7] = (0u | 192u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); ctx.gpr[7] = (0u | 51u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[4])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(64)); ctx.gpr[7] = (0u | 119u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(68)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[8])); ctx.gpr[7] = (0u | 63u); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(72)); aot_mem.aot_store8(ctx.gpr[6] + static_cast(0), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(1), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(2), static_cast(ctx.gpr[8])); aot_mem.aot_store8(ctx.gpr[6] + static_cast(3), static_cast(ctx.gpr[4])); ctx.gpr[5] = (ctx.gpr[5] + static_cast(76)); aot_mem.aot_store8(ctx.gpr[5] + static_cast(0), static_cast(ctx.gpr[9])); aot_mem.aot_store8(ctx.gpr[5] + static_cast(1), static_cast(ctx.gpr[7])); aot_mem.aot_store8(ctx.gpr[5] + static_cast(2), static_cast(ctx.gpr[8])); aot_mem.aot_store8(ctx.gpr[5] + static_cast(3), static_cast(ctx.gpr[4])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[31]); ctx.gpr[31] = (0x0882368Cu); ctx.gpr[4] = (ctx.gpr[28] + static_cast(-30512)); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 68u, 0x08B60680u>(ctx, &aot_mem) && ctx.pc == 0x0882368Cu) goto L_0882368C; return; L_0882368C: ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823698: ctx.gpr[5] = (2235u << 16u); aot_mem.aot_store8(ctx.gpr[4] + static_cast(0), static_cast(0u)); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-28356)); aot_mem.aot_store32(ctx.gpr[4] + static_cast(4), ctx.gpr[5]); aot_mem.aot_store16(ctx.gpr[4] + static_cast(100), static_cast(0u)); aot_mem.aot_store8(ctx.gpr[4] + static_cast(102), static_cast(0u)); jump_target = ctx.gpr[31]; ctx.gpr[2] = (ctx.gpr[4] | 0u); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088236B8: aot_mem.aot_store8(ctx.gpr[4] + static_cast(0), static_cast(0u)); ctx.gpr[2] = (2235u << 16u); ctx.gpr[2] = (ctx.gpr[2] + static_cast(-28356)); aot_mem.aot_store32(ctx.gpr[4] + static_cast(4), ctx.gpr[2]); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } aot_mem.aot_store8(ctx.gpr[4] + static_cast(32), static_cast(ctx.gpr[6])); { const std::uint32_t vfpu_address = ctx.gpr[7] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(48)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[8] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } { const std::uint32_t vfpu_address = ctx.gpr[9] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[5] = (ctx.gpr[4] + static_cast(80)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } aot_mem.aot_store32(ctx.gpr[4] + static_cast(96), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store16(ctx.gpr[4] + static_cast(100), static_cast(ctx.gpr[11])); aot_mem.aot_store8(ctx.gpr[4] + static_cast(102), static_cast(ctx.gpr[10])); jump_target = ctx.gpr[31]; ctx.gpr[2] = (ctx.gpr[4] | 0u); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823710: ctx.gpr[2] = (2178u << 16u); jump_target = ctx.gpr[31]; ctx.gpr[2] = (ctx.gpr[2] + static_cast(14096)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_0882371C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[31]); ctx.gpr[31] = (0x0882372Cu); // nop goto L_08823710; L_0882372C: ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823738: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x08823754u); ctx.gpr[17] = (0u | 0u); goto L_08823710; L_08823754: if (ctx.gpr[2] == ctx.gpr[16]) { ctx.gpr[17] = (0u | 1u); goto L_0882377C; } goto L_0882375C; L_0882375C: ctx.gpr[31] = (0x08823764u); // nop if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 295u, 0x08A9A6CCu>(ctx, &aot_mem) && ctx.pc == 0x08823764u) goto L_08823764; return; L_08823764: ctx.gpr[4] = (ctx.gpr[2] ^ ctx.gpr[16]); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0882377C; } goto L_08823778; } L_08823778: ctx.gpr[17] = (0u | 1u); goto L_0882377C; L_0882377C: ctx.gpr[2] = (ctx.gpr[17] & 255u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823794: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[16] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_088237E4; } goto L_088237B0; } L_088237B0: ctx.gpr[4] = (2235u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-28340)); aot_mem.aot_store32(ctx.gpr[17] + static_cast(108), ctx.gpr[4]); ctx.gpr[31] = (0x088237C4u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 425u, 0x08A9B6A8u>(ctx, &aot_mem) && ctx.pc == 0x088237C4u) goto L_088237C4; return; L_088237C4: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x088237D0u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 309u, 0x08A9A87Cu>(ctx, &aot_mem) && ctx.pc == 0x088237D0u) goto L_088237D0; return; L_088237D0: ctx.gpr[4] = (ctx.gpr[16] & 1u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088237E4; } goto L_088237DC; } L_088237DC: ctx.gpr[31] = (0x088237E4u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0174_entry, 174u, 470u, 0x08ABE2C0u>(ctx, &aot_mem) && ctx.pc == 0x088237E4u) goto L_088237E4; return; L_088237E4: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088237F8: jump_target = ctx.gpr[31]; ctx.gpr[2] = (0u | 0u); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823800: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[4] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (2237u << 16u); ctx.gpr[5] = (0u | 112u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x08823824u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-29120)); if (rt.invoke_chained_direct<&recomp_unit_0174_entry, 174u, 501u, 0x08ABE57Cu>(ctx, &aot_mem) && ctx.pc == 0x08823824u) goto L_08823824; return; L_08823824: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[2] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); if (branch_taken) { goto L_0882383C; } goto L_08823830; } L_08823830: ctx.gpr[31] = (0x08823838u); ctx.gpr[4] = (ctx.gpr[16] | 0u); goto L_08823698; L_08823838: ctx.gpr[2] = (ctx.gpr[16] | 0u); goto L_0882383C; L_0882383C: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_0882384C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_08823878; } goto L_0882385C; } L_0882385C: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[5] = (0u | 3u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(8)); ctx.gpr[7] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[6] + static_cast(0)))))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08823878u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[7]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08823878u) goto L_08823878; return; L_08823878: ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823884: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[5]); ctx.gpr[4] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (2237u << 16u); ctx.gpr[5] = (0u | 112u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x088238A8u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-29120)); if (rt.invoke_chained_direct<&recomp_unit_0174_entry, 174u, 501u, 0x08ABE57Cu>(ctx, &aot_mem) && ctx.pc == 0x088238A8u) goto L_088238A8; return; L_088238A8: ctx.gpr[5] = (ctx.gpr[2] | 0u); ctx.gpr[2] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); if (branch_taken) { goto L_0882393C; } goto L_088238B8; } L_088238B8: ctx.gpr[6] = (2235u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-28628)); aot_mem.aot_store32(ctx.gpr[5] + static_cast(4), ctx.gpr[6]); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); aot_mem.aot_store8(ctx.gpr[5] + static_cast(0), static_cast(ctx.gpr[6])); ctx.gpr[6] = (2235u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-28356)); aot_mem.aot_store32(ctx.gpr[5] + static_cast(4), ctx.gpr[6]); ctx.gpr[6] = (ctx.gpr[4] + static_cast(16)); { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[6] = (ctx.gpr[5] + static_cast(16)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(32))); aot_mem.aot_store8(ctx.gpr[5] + static_cast(32), static_cast(ctx.gpr[6])); ctx.gpr[6] = (ctx.gpr[4] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[6] = (ctx.gpr[5] + static_cast(48)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[6] = (ctx.gpr[4] + static_cast(64)); { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[6] = (ctx.gpr[5] + static_cast(64)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[6] = (ctx.gpr[4] + static_cast(80)); { const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } ctx.gpr[6] = (ctx.gpr[5] + static_cast(80)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[6] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(96))); aot_mem.aot_store32(ctx.gpr[5] + static_cast(96), std::bit_cast(ctx.fpr[12])); ctx.gpr[6] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(100))); aot_mem.aot_store16(ctx.gpr[5] + static_cast(100), static_cast(ctx.gpr[6])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(102))); aot_mem.aot_store8(ctx.gpr[5] + static_cast(102), static_cast(ctx.gpr[4])); ctx.gpr[2] = (ctx.gpr[5] | 0u); goto L_0882393C; L_0882393C: ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823948: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); ctx.gpr[16] = (ctx.gpr[6] | 0u); ctx.gpr[18] = (0u | 0u); ctx.gpr[4] = (ctx.gpr[17] + static_cast(16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x08823974u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(16)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 456u, 0x08A93144u>(ctx, &aot_mem) && ctx.pc == 0x08823974u) goto L_08823974; return; L_08823974: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088239C0; } goto L_0882397C; } L_0882397C: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[17] + static_cast(32))); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(32))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; ctx.gpr[4] = (ctx.gpr[17] + static_cast(48)); if (branch_taken) { goto L_088239C0; } goto L_0882398C; } L_0882398C: ctx.gpr[31] = (0x08823994u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(48)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 456u, 0x08A93144u>(ctx, &aot_mem) && ctx.pc == 0x08823994u) goto L_08823994; return; L_08823994: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[4] = (ctx.gpr[17] + static_cast(64)); if (branch_taken) { goto L_088239C0; } goto L_0882399C; } L_0882399C: ctx.gpr[31] = (0x088239A4u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(64)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 456u, 0x08A93144u>(ctx, &aot_mem) && ctx.pc == 0x088239A4u) goto L_088239A4; return; L_088239A4: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[4] = (ctx.gpr[17] + static_cast(80)); if (branch_taken) { goto L_088239C0; } goto L_088239AC; } L_088239AC: ctx.gpr[31] = (0x088239B4u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(80)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 456u, 0x08A93144u>(ctx, &aot_mem) && ctx.pc == 0x088239B4u) goto L_088239B4; return; L_088239B4: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088239C0; } goto L_088239BC; } L_088239BC: ctx.gpr[18] = (0u | 1u); goto L_088239C0; L_088239C0: ctx.gpr[2] = (ctx.gpr[18] & 255u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088239DC: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x088239F0u); ctx.gpr[16] = (ctx.gpr[4] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 300u, 0x08A9A720u>(ctx, &aot_mem) && ctx.pc == 0x088239F0u) goto L_088239F0; return; L_088239F0: ctx.gpr[4] = (2234u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(19152)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(200))); ctx.gpr[5] = (0u + static_cast(-1)); aot_mem.aot_store32(ctx.gpr[16] + static_cast(108), ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(112), ctx.gpr[5]); ctx.gpr[4] = (0u + static_cast(-2)); aot_mem.aot_store32(ctx.gpr[16] + static_cast(192), 0u); ctx.gpr[4] = (ctx.gpr[6] & ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[16] + static_cast(200), ctx.gpr[4]); ctx.gpr[2] = (ctx.gpr[16] | 0u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823A2C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[16] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_08823AF8; } goto L_08823A48; } L_08823A48: ctx.gpr[4] = (2234u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(19152)); aot_mem.aot_store32(ctx.gpr[17] + static_cast(108), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(112))); ctx.gpr[5] = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08823A84; } goto L_08823A64; } L_08823A64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); goto L_08823A7C; } goto L_08823A70; L_08823A70: ctx.gpr[31] = (0x08823A78u); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 358u, 0x08B65844u>(ctx, &aot_mem) && ctx.pc == 0x08823A78u) goto L_08823A78; return; L_08823A78: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); goto L_08823A7C; L_08823A7C: ctx.gpr[31] = (0x08823A84u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(112))); if (rt.invoke_chained_direct<&recomp_unit_0002_entry, 2u, 412u, 0x0880DC1Cu>(ctx, &aot_mem) && ctx.pc == 0x08823A84u) goto L_08823A84; return; L_08823A84: ctx.gpr[31] = (0x08823A8Cu); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0008_entry, 8u, 80u, 0x08824878u>(ctx, &aot_mem) && ctx.pc == 0x08823A8Cu) goto L_08823A8C; return; L_08823A8C: ctx.gpr[4] = (ctx.gpr[17] + static_cast(128)); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823ABC; } goto L_08823A98; } L_08823A98: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(200))); ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823ABC; } goto L_08823AA8; } L_08823AA8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(192))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823ABC; } goto L_08823AB4; } L_08823AB4: ctx.gpr[31] = (0x08823ABCu); // nop if (rt.invoke_chained_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem) && ctx.pc == 0x08823ABCu) goto L_08823ABC; return; L_08823ABC: { const bool branch_taken = ctx.gpr[17] == 0u; ctx.gpr[4] = (ctx.gpr[16] & 1u); if (branch_taken) { goto L_08823AE8; } goto L_08823AC4; } L_08823AC4: ctx.gpr[4] = (2235u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-28340)); aot_mem.aot_store32(ctx.gpr[17] + static_cast(108), ctx.gpr[4]); ctx.gpr[31] = (0x08823AD8u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 425u, 0x08A9B6A8u>(ctx, &aot_mem) && ctx.pc == 0x08823AD8u) goto L_08823AD8; return; L_08823AD8: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08823AE4u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 309u, 0x08A9A87Cu>(ctx, &aot_mem) && ctx.pc == 0x08823AE4u) goto L_08823AE4; return; L_08823AE4: ctx.gpr[4] = (ctx.gpr[16] & 1u); goto L_08823AE8; L_08823AE8: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823AF8; } goto L_08823AF0; } L_08823AF0: ctx.gpr[31] = (0x08823AF8u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0174_entry, 174u, 470u, 0x08ABE2C0u>(ctx, &aot_mem) && ctx.pc == 0x08823AF8u) goto L_08823AF8; return; L_08823AF8: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823B0C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[5] & 65535u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x08823B2Cu); ctx.gpr[6] = (ctx.gpr[6] & 65535u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 454u, 0x08A9B9C8u>(ctx, &aot_mem) && ctx.pc == 0x08823B2Cu) goto L_08823B2C; return; L_08823B2C: ctx.gpr[17] = (2237u << 16u); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[16] + static_cast(3)))))); ctx.gpr[17] = (ctx.gpr[17] + static_cast(-28736)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(100))); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[5] + static_cast(52))); ctx.gpr[4] = (ctx.gpr[4] ^ ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[4] < static_cast(1) ? 1u : 0u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08823C04; } goto L_08823B54; } L_08823B54: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); if (ctx.gpr[4] != 0u) { ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[16] + static_cast(3)))))); goto L_08823B70; } goto L_08823B60; L_08823B60: ctx.gpr[31] = (0x08823B68u); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 358u, 0x08B65844u>(ctx, &aot_mem) && ctx.pc == 0x08823B68u) goto L_08823B68; return; L_08823B68: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[16] + static_cast(3)))))); goto L_08823B70; L_08823B70: ctx.gpr[5] = (0u | 6u); ctx.gpr[6] = (ctx.gpr[6] << 16u); ctx.gpr[7] = (0u | 1u); ctx.gpr[31] = (0x08823B84u); ctx.gpr[8] = (0u | 3u); if (rt.invoke_chained_direct<&recomp_unit_0002_entry, 2u, 438u, 0x0880DF30u>(ctx, &aot_mem) && ctx.pc == 0x08823B84u) goto L_08823B84; return; L_08823B84: aot_mem.aot_store32(ctx.gpr[16] + static_cast(112), ctx.gpr[2]); ctx.gpr[31] = (0x08823B90u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0182_entry, 182u, 137u, 0x08ADC734u>(ctx, &aot_mem) && ctx.pc == 0x08823B90u) goto L_08823B90; return; L_08823B90: ctx.gpr[5] = (0u | 5u); { const bool branch_taken = ctx.gpr[2] != ctx.gpr[5]; ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); if (branch_taken) { goto L_08823BC0; } goto L_08823B9C; } L_08823B9C: if (ctx.gpr[4] != 0u) { ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BB4; } goto L_08823BA4; L_08823BA4: ctx.gpr[31] = (0x08823BACu); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 358u, 0x08B65844u>(ctx, &aot_mem) && ctx.pc == 0x08823BACu) goto L_08823BAC; return; L_08823BAC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BB4; L_08823BB4: ctx.gpr[31] = (0x08823BBCu); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0002_entry, 2u, 462u, 0x0880E1D8u>(ctx, &aot_mem) && ctx.pc == 0x08823BBCu) goto L_08823BBC; return; L_08823BBC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); goto L_08823BC0; L_08823BC0: if (ctx.gpr[4] != 0u) { ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BD8; } goto L_08823BC8; L_08823BC8: ctx.gpr[31] = (0x08823BD0u); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 358u, 0x08B65844u>(ctx, &aot_mem) && ctx.pc == 0x08823BD0u) goto L_08823BD0; return; L_08823BD0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BD8; L_08823BD8: ctx.gpr[31] = (0x08823BE0u); ctx.gpr[6] = (0u | 15u); if (rt.invoke_chained_direct<&recomp_unit_0002_entry, 2u, 466u, 0x0880E240u>(ctx, &aot_mem) && ctx.pc == 0x08823BE0u) goto L_08823BE0; return; L_08823BE0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); if (ctx.gpr[4] != 0u) { ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BFC; } goto L_08823BEC; L_08823BEC: ctx.gpr[31] = (0x08823BF4u); // nop if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 358u, 0x08B65844u>(ctx, &aot_mem) && ctx.pc == 0x08823BF4u) goto L_08823BF4; return; L_08823BF4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(5852))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(112))); goto L_08823BFC; L_08823BFC: ctx.gpr[31] = (0x08823C04u); ctx.gpr[6] = (0u | 3u); if (rt.invoke_chained_direct<&recomp_unit_0002_entry, 2u, 483u, 0x0880E374u>(ctx, &aot_mem) && ctx.pc == 0x08823C04u) goto L_08823C04; return; L_08823C04: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(16)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823C18: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-128)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), ctx.gpr[17]); ctx.gpr[17] = (2238u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(92), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[17] = (ctx.gpr[17] + static_cast(-6992)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(100), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(128), ctx.gpr[5]); ctx.gpr[18] = (ctx.gpr[29] + static_cast(16)); ctx.gpr[4] = (ctx.gpr[17] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(104), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(108), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(112), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(116), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(120), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(124), ctx.gpr[31]); ctx.gpr[31] = (0x08823C60u); ctx.gpr[5] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0087_entry, 87u, 111u, 0x089609B4u>(ctx, &aot_mem) && ctx.pc == 0x08823C60u) goto L_08823C60; return; L_08823C60: ctx.gpr[23] = (2238u << 16u); ctx.gpr[23] = (ctx.gpr[23] + static_cast(-6640)); ctx.gpr[19] = (0u | 0u); ctx.gpr[31] = (0x08823C74u); ctx.gpr[4] = (ctx.gpr[23] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0098_entry, 98u, 319u, 0x0898CE74u>(ctx, &aot_mem) && ctx.pc == 0x08823C74u) goto L_08823C74; return; L_08823C74: ctx.gpr[20] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[21] = (ctx.gpr[29] + static_cast(48)); { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[22] = (ctx.gpr[29] + static_cast(64)); if (branch_taken) { goto L_08823C88; } goto L_08823C84; } L_08823C84: ctx.gpr[19] = (0u | 1u); goto L_08823C88; L_08823C88: ctx.gpr[31] = (0x08823C90u); ctx.gpr[4] = (ctx.gpr[23] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0098_entry, 98u, 399u, 0x0898D1ACu>(ctx, &aot_mem) && ctx.pc == 0x08823C90u) goto L_08823C90; return; L_08823C90: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08823C9C; } goto L_08823C98; } L_08823C98: ctx.gpr[19] = (ctx.gpr[19] | 2u); goto L_08823C9C; L_08823C9C: ctx.gpr[31] = (0x08823CA4u); ctx.gpr[4] = (ctx.gpr[23] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0098_entry, 98u, 148u, 0x0898C6D0u>(ctx, &aot_mem) && ctx.pc == 0x08823CA4u) goto L_08823CA4; return; L_08823CA4: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08823CB0; } goto L_08823CAC; } L_08823CAC: ctx.gpr[19] = (ctx.gpr[19] | 4u); goto L_08823CB0; L_08823CB0: ctx.gpr[31] = (0x08823CB8u); ctx.gpr[4] = (ctx.gpr[23] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0098_entry, 98u, 200u, 0x0898C924u>(ctx, &aot_mem) && ctx.pc == 0x08823CB8u) goto L_08823CB8; return; L_08823CB8: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08823CC4; } goto L_08823CC0; } L_08823CC0: ctx.gpr[19] = (ctx.gpr[19] | 8u); goto L_08823CC4; L_08823CC4: ctx.gpr[4] = (2236u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(32304)); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(80))); ctx.gpr[5] = (ctx.gpr[5] << 5u); ctx.gpr[6] = (0u - ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[6] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[5] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[6] = (ctx.gpr[4] + static_cast(128)); ctx.gpr[5] = (ctx.gpr[5] + ctx.gpr[6]); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; 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[20] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(80))); ctx.gpr[5] = (ctx.gpr[5] << 5u); ctx.gpr[6] = (0u - ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[6] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[5] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[6] = (ctx.gpr[4] + static_cast(144)); ctx.gpr[5] = (ctx.gpr[5] + ctx.gpr[6]); { const std::uint32_t vfpu_address = ctx.gpr[5] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[21] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(80))); ctx.gpr[5] = (ctx.gpr[5] << 5u); ctx.gpr[6] = (0u - ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[6] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[5] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[4] + static_cast(208)); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[4] + static_cast(0); float vfpu_value[4]{ std::bit_cast(aot_mem.aot_load32(vfpu_address + 0u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 4u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 8u)), std::bit_cast(aot_mem.aot_load32(vfpu_address + 12u))}; ctx.write_vfpu_vector_ct<0u, 4u>(vfpu_value); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[22] + static_cast(0); aot_mem.aot_store32(vfpu_address + 0u, std::bit_cast(vfpu_value[0])); aot_mem.aot_store32(vfpu_address + 4u, std::bit_cast(vfpu_value[1])); aot_mem.aot_store32(vfpu_address + 8u, std::bit_cast(vfpu_value[2])); aot_mem.aot_store32(vfpu_address + 12u, std::bit_cast(vfpu_value[3])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[28] + static_cast(-16976))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(7800))); ctx.gpr[5] = (ctx.gpr[4] << 8u); ctx.gpr[6] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[6]); ctx.gpr[4] = (ctx.gpr[4] << 5u); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[17]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(208))); ctx.gpr[4] = (ctx.gpr[4] & 255u); aot_mem.aot_store16(ctx.gpr[29] + static_cast(86), static_cast(ctx.gpr[4])); ctx.gpr[31] = (0x08823D88u); // nop if (rt.invoke_chained_direct<&recomp_unit_0087_entry, 87u, 47u, 0x08960424u>(ctx, &aot_mem) && ctx.pc == 0x08823D88u) goto L_08823D88; return; L_08823D88: ctx.gpr[31] = (0x08823D90u); ctx.gpr[4] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0080_entry, 80u, 694u, 0x08947634u>(ctx, &aot_mem) && ctx.pc == 0x08823D90u) goto L_08823D90; return; L_08823D90: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[2] + static_cast(0))); aot_mem.aot_store8(ctx.gpr[29] + static_cast(84), static_cast(ctx.gpr[4])); ctx.gpr[17] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(128)))))); ctx.gpr[4] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), ctx.gpr[4]); ctx.gpr[4] = (2237u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-29120)); ctx.gpr[31] = (0x08823DB4u); ctx.gpr[5] = (0u | 112u); if (rt.invoke_chained_direct<&recomp_unit_0174_entry, 174u, 501u, 0x08ABE57Cu>(ctx, &aot_mem) && ctx.pc == 0x08823DB4u) goto L_08823DB4; return; L_08823DB4: ctx.gpr[23] = (ctx.gpr[2] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(80))); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(84))); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[29] + static_cast(86))); { const bool branch_taken = ctx.gpr[23] == 0u; ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(88))); if (branch_taken) { goto L_08823DF4; } goto L_08823DCC; } L_08823DCC: ctx.gpr[10] = (ctx.gpr[5] | 0u); ctx.gpr[11] = (ctx.gpr[4] | 0u); ctx.gpr[6] = (ctx.gpr[19] & 255u); ctx.gpr[4] = (ctx.gpr[23] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[7] = (ctx.gpr[20] | 0u); ctx.gpr[8] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08823DF0u); ctx.gpr[9] = (ctx.gpr[22] | 0u); goto L_088236B8; L_08823DF0: ctx.gpr[6] = (ctx.gpr[23] | 0u); goto L_08823DF4; L_08823DF4: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08823E00u); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 456u, 0x08A9B9F4u>(ctx, &aot_mem) && ctx.pc == 0x08823E00u) goto L_08823E00; return; L_08823E00: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(92))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(100))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(108))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(112))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(116))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(120))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(124))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(128)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823E2C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), ctx.gpr[7]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(16))); ctx.gpr[6] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(52)))))); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[4] + static_cast(0)))))); aot_mem.aot_store16(ctx.gpr[29] + static_cast(18), static_cast(ctx.gpr[4])); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(18)))))); ctx.gpr[4] = (ctx.gpr[6] - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] << 16u); ctx.gpr[4] = (static_cast(static_cast(ctx.gpr[4]) >> 16u)); ctx.gpr[4] = (static_cast(ctx.gpr[4]) < 0 ? 1u : 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[5] | 0u); ctx.gpr[6] = (ctx.gpr[4] & 255u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(48)))))); if (branch_taken) { goto L_08823EB0; } goto L_08823E80; } L_08823E80: aot_mem.aot_store16(ctx.gpr[29] + static_cast(20), static_cast(ctx.gpr[4])); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(20)))))); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08823E94u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem) && ctx.pc == 0x08823E94u) goto L_08823E94; return; L_08823E94: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x08823EA8u); ctx.gpr[7] = (0u | 255u); if (rt.invoke_chained_direct<&recomp_unit_0008_entry, 8u, 155u, 0x08824D28u>(ctx, &aot_mem) && ctx.pc == 0x08823EA8u) goto L_08823EA8; return; L_08823EA8: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_08823EF0; } goto L_08823EB0; } L_08823EB0: aot_mem.aot_store16(ctx.gpr[29] + static_cast(22), static_cast(ctx.gpr[4])); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(22)))))); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08823EC4u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem) && ctx.pc == 0x08823EC4u) goto L_08823EC4; return; L_08823EC4: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(52)))))); ctx.gpr[18] = (ctx.gpr[2] | 0u); aot_mem.aot_store16(ctx.gpr[29] + static_cast(24), static_cast(ctx.gpr[4])); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[29] + static_cast(24)))))); ctx.gpr[31] = (0x08823EDCu); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0165_entry, 165u, 440u, 0x08A9B864u>(ctx, &aot_mem) && ctx.pc == 0x08823EDCu) goto L_08823EDC; return; L_08823EDC: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08823EF0u); ctx.gpr[7] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0008_entry, 8u, 109u, 0x08824A20u>(ctx, &aot_mem) && ctx.pc == 0x08823EF0u) goto L_08823EF0; return; L_08823EF0: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(48)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08823F08: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); ctx.gpr[18] = (ctx.gpr[5] + static_cast(4)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[7] = (ctx.gpr[4] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[7]); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[8] = (ctx.gpr[7] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); ctx.gpr[19] = (ctx.gpr[6] | 0u); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[8]); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[7] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (ctx.gpr[6] << 8u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[4] | ctx.gpr[5]); ctx.gpr[17] = (ctx.gpr[17] & 65535u); ctx.gpr[4] = (ctx.gpr[17] & 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08823FCC; } goto L_08823F64; } L_08823F64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[4] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[5]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (ctx.gpr[5] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[6]); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[5] << 8u); ctx.gpr[7] = (ctx.gpr[6] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[7]); ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[6] + static_cast(0))); ctx.gpr[8] = (ctx.gpr[7] + static_cast(1)); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[8]); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[7] + static_cast(0))); ctx.gpr[4] = (ctx.gpr[4] & 65535u); ctx.gpr[5] = (ctx.gpr[5] << 8u); ctx.gpr[5] = (ctx.gpr[6] | ctx.gpr[5]); ctx.gpr[5] = (ctx.gpr[5] & 65535u); ctx.gpr[5] = (ctx.gpr[5] << 16u); ctx.gpr[4] = (ctx.gpr[4] | ctx.gpr[5]); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[19] + static_cast(16), std::bit_cast(ctx.fpr[12])); goto L_08823FCC; L_08823FCC: ctx.gpr[4] = (ctx.gpr[17] & 2u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { (void)rt.invoke_chained_direct<&recomp_unit_0008_entry, 8u, 2u, 0x08824040u>(ctx, &aot_mem); return; } goto L_08823FD8; } L_08823FD8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[4] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[5]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (ctx.gpr[5] + static_cast(1)); aot_mem.aot_store32(ctx.gpr[18] + static_cast(0), ctx.gpr[6]); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[5] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[5] << 8u); ctx.pc = 0x08824000u; return; } void recomp_unit_0007(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0007_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_7(Runtime &runtime) { runtime.register_generated_unit(7u, 0x08820000u, 16384u, &recomp_unit_0007, &recomp_unit_0007_entry); runtime.register_function(0x08820000u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820004u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820008u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882001Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820064u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820070u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820078u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820084u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088200B4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088200B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088200C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088200E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882012Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882013Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820148u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820150u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820158u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820160u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820168u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820170u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820178u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820180u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820184u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088201A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088201ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088201D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820204u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820210u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820218u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820220u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882023Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820244u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882024Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820254u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882025Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820274u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882027Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820284u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882028Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202B4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202D8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088202F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820300u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820308u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820310u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820320u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820328u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820348u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820350u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820360u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820368u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820384u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088203C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088203E0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088203E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088203F0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820400u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820408u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820410u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820418u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820428u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820430u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820454u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820458u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820488u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204C0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204D8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204F4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088204FCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820504u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882050Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820530u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820540u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820548u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820560u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820578u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882058Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088205A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088205CCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088205F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820630u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820648u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820660u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820670u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820678u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882068Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820694u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088206A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088206C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088206E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882071Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882074Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820774u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820780u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820790u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088207FCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820800u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882080Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882081Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820828u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882082Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820850u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882089Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088208BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088208CCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088208D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088208F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820908u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820914u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882091Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820924u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820940u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882094Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882096Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820974u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820980u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820990u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209D8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088209E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A04u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A34u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A3Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A68u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820A98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820AB8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820AD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820AE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820AF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820AF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B00u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B04u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B18u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B34u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B48u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820B80u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820BBCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820BC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820BD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820BD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820BF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C00u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C08u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C10u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C18u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C20u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C38u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C44u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C50u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C58u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C6Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C88u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C94u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820C9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820CF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D30u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D38u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D40u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D50u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D58u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D64u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D7Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D8Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820D90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DDCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820DF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E08u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E20u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E28u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E70u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820E98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820EBCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820ECCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820ED4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820ED8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820EE4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820EE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820EF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820F50u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820F5Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820F78u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820F80u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820FA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820FC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08820FECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821030u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821048u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821054u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821074u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821078u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821090u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088210A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088210D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088210E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088210F4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882110Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821124u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882114Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821160u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821170u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821184u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088211ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088211D8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821228u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882126Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088212D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821310u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821334u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882134Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821350u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821360u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088213B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088213C0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882141Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821450u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821454u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821460u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821480u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088214C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088214ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088214F0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088214F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882150Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821514u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821520u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882153Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821548u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821550u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882155Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882156Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821578u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821588u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821590u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088215C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088215F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821608u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821620u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882162Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821648u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821654u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882166Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821684u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882169Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088216ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088216BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088217D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088217ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882186Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821874u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088218A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088218A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882191Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821968u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882199Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088219CCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088219E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088219F4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088219FCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A04u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A1Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A24u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A40u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A6Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821A9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821ACCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AD4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AE4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821AF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821B0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821B30u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821B5Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821B84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821B9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821BB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821BD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821BD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821BECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821BF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821C58u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821C60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821C6Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821C74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821C8Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821CF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D00u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D24u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D30u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D54u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821D90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821DC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821DD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821DD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821DF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821DF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E00u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E1Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E5Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E64u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821E9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821EC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821ECCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821ED4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821EE4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821EF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821EFCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F1Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F58u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F7Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F8Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821F94u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FE4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08821FF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822004u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822010u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822018u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822020u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822028u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822034u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882203Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882204Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822068u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822080u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822088u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088220A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882210Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822114u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822118u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822130u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822138u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882214Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822164u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822180u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088221A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088221ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088221F0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822208u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882220Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822228u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882222Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882223Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822240u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822248u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822250u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822258u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822260u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822264u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882227Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822284u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822288u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882229Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222C4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222E0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088222ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822300u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822308u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882230Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822318u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822338u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822340u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822348u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822350u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822358u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822364u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822384u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822390u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822398u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223C0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223CCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223E0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088223ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822400u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822408u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882240Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822420u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822428u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882242Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822440u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822448u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882244Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822484u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088224DCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088224F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822500u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822508u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822520u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822538u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822548u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822564u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822574u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822584u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822594u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225E0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088225ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822600u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822608u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822614u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882261Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822620u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822634u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822638u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822640u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882264Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822664u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822670u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822698u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088226B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088226D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088226E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882271Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822724u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882272Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088227E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822804u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882280Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822880u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088228A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088228ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088228ECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822934u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822938u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882298Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822994u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088229B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822A2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822A54u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822A80u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822AC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822AF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822B1Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822B24u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822B38u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822B70u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822B84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822BC0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822BFCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C1Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C34u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C4Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C5Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C64u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822C98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CA0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CCCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CE0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822CE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D20u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D28u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D34u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D40u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D48u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D6Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D80u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D88u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822D98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DA0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DA8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DBCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DE0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822DFCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E04u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E20u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E34u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E3Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E50u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E58u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E6Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822E7Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822EA0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822EB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822EC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822EE0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822EF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F14u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F28u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F3Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F48u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F88u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822F9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822FA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822FC0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822FC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822FD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08822FE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823000u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823028u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882304Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823060u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823068u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882308Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088230A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088230BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823100u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882310Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823130u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882313Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882315Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823164u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823168u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823180u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823188u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231C0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231C8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088231D8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823210u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823238u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823240u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882326Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823274u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823280u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823288u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823290u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823298u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088232A0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088232A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088232B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088232E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088232F4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823300u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823308u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823310u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823330u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823338u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823350u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823378u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823384u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882338Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823394u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882339Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233B4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233D4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233E0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233E8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233F0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088233F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823414u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882342Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882343Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823444u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823464u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882346Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823474u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882347Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882348Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823490u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088234BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882368Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823698u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088236B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823710u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882371Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882372Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823738u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823754u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882375Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823764u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823778u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882377Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823794u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237B0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237C4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237D0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237DCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237E4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088237F8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823800u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823824u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823830u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823838u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882383Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882384Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882385Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823878u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823884u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088238A8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088238B8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882393Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823948u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823974u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882397Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882398Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823994u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x0882399Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239A4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239ACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239B4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239BCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239C0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239DCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x088239F0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A48u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A64u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A70u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A78u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A7Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A8Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823A98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AA8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823ABCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AE4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AE8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823AF8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B0Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B54u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B68u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B70u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823B9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BBCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BC0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BC8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BD0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BD8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BE0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BECu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823BFCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C04u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C18u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C60u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C74u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C84u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C88u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C98u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823C9Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CA4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CACu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CB8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CC0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823CC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823D88u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823D90u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823DB4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823DCCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823DF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823DF4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823E00u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823E2Cu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823E80u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823E94u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823EA8u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823EB0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823EC4u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823EDCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823EF0u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823F08u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823F64u, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823FCCu, &recomp_unit_0007, "recomp_unit_0007"); runtime.register_function(0x08823FD8u, &recomp_unit_0007, "recomp_unit_0007"); } } // namespace psprecomp