#include "psprecomp/runtime.hpp" #include "generated_units.hpp" #include #include #include #include namespace psprecomp { static const std::uint16_t kEntryIds_recomp_unit_0031[4094] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 4, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 9, 0, 0, 10, 0, 0, 0, 11, 0, 0, 0, 12, 0, 0, 0, 0, 13, 14, 0, 0, 0, 0, 0, 15, 0, 0, 16, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 19, 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, 20, 21, 0, 0, 22, 0, 0, 23, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 31, 0, 0, 0, 0, 0, 0, 32, 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, 33, 0, 0, 0, 0, 0, 34, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 0, 38, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 44, 0, 0, 45, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 49, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 52, 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 55, 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 60, 0, 0, 0, 61, 0, 62, 0, 0, 63, 0, 64, 0, 0, 0, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 68, 0, 69, 0, 0, 0, 0, 70, 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, 0, 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 77, 78, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 81, 0, 82, 0, 0, 83, 0, 0, 84, 0, 85, 0, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0, 0, 0, 0, 0, 88, 0, 89, 0, 0, 0, 90, 0, 0, 0, 91, 92, 0, 93, 0, 94, 0, 0, 0, 0, 0, 95, 96, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 0, 99, 100, 0, 101, 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, 102, 0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 104, 0, 105, 0, 0, 0, 0, 0, 0, 0, 106, 0, 107, 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 110, 0, 111, 112, 0, 113, 114, 0, 115, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, 118, 0, 119, 120, 0, 121, 122, 0, 123, 124, 0, 0, 0, 0, 0, 125, 0, 0, 126, 0, 0, 0, 0, 127, 0, 128, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 131, 0, 132, 0, 0, 0, 0, 0, 0, 0, 133, 0, 134, 0, 0, 0, 0, 135, 0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 137, 0, 138, 139, 0, 140, 141, 0, 142, 0, 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 0, 145, 0, 146, 147, 0, 148, 149, 0, 150, 151, 0, 0, 0, 0, 0, 152, 0, 0, 153, 0, 0, 0, 0, 154, 0, 155, 0, 0, 0, 156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 157, 0, 0, 0, 0, 0, 0, 158, 0, 0, 159, 0, 0, 0, 0, 160, 0, 0, 0, 0, 0, 161, 0, 0, 0, 0, 162, 0, 0, 0, 0, 0, 0, 163, 0, 0, 0, 0, 164, 0, 165, 166, 0, 167, 168, 0, 169, 0, 0, 0, 0, 170, 0, 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, 172, 0, 173, 174, 0, 175, 176, 0, 177, 0, 0, 0, 0, 0, 0, 178, 0, 0, 0, 0, 0, 0, 179, 0, 0, 0, 0, 180, 0, 181, 182, 0, 183, 184, 0, 185, 186, 0, 0, 0, 0, 0, 187, 0, 0, 188, 0, 0, 0, 0, 189, 0, 0, 190, 0, 191, 0, 0, 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 193, 0, 194, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 198, 0, 199, 0, 0, 0, 0, 0, 0, 200, 0, 0, 0, 0, 201, 0, 202, 203, 0, 204, 205, 0, 206, 207, 0, 0, 0, 0, 0, 208, 0, 0, 209, 0, 0, 0, 0, 210, 0, 211, 0, 0, 0, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 213, 0, 0, 0, 0, 0, 0, 214, 0, 0, 215, 0, 216, 0, 0, 0, 0, 0, 0, 217, 0, 0, 0, 218, 0, 0, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 0, 0, 222, 0, 0, 0, 0, 223, 0, 224, 0, 225, 0, 0, 0, 0, 0, 226, 0, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 228, 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, 229, 0, 0, 0, 0, 230, 0, 231, 0, 232, 0, 0, 233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 0, 236, 0, 237, 0, 238, 239, 0, 0, 0, 0, 0, 0, 0, 0, 240, 0, 0, 0, 0, 241, 0, 0, 0, 0, 242, 0, 243, 0, 0, 244, 0, 245, 0, 0, 0, 0, 246, 0, 0, 247, 0, 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, 0, 0, 249, 0, 0, 250, 251, 0, 0, 0, 0, 0, 252, 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, 253, 0, 0, 0, 0, 0, 254, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 0, 0, 257, 0, 0, 258, 0, 259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 260, 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, 261, 0, 0, 0, 0, 0, 0, 0, 262, 0, 263, 0, 0, 264, 0, 0, 265, 0, 0, 0, 266, 0, 0, 0, 0, 0, 267, 0, 268, 0, 0, 269, 0, 0, 270, 0, 0, 0, 271, 0, 272, 0, 0, 0, 0, 0, 273, 0, 0, 274, 0, 0, 275, 0, 0, 0, 276, 0, 277, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278, 0, 0, 279, 0, 0, 280, 0, 0, 0, 0, 281, 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, 0, 0, 0, 0, 0, 0, 283, 0, 0, 284, 0, 0, 285, 0, 0, 0, 0, 286, 0, 287, 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, 288, 0, 0, 289, 0, 0, 290, 0, 0, 0, 291, 0, 292, 0, 0, 0, 0, 0, 293, 0, 0, 294, 0, 0, 295, 0, 0, 0, 296, 0, 297, 0, 0, 0, 298, 0, 0, 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 0, 302, 0, 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, 0, 0, 0, 305, 0, 0, 306, 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, 307, 0, 0, 0, 0, 0, 0, 0, 308, 0, 0, 0, 0, 0, 0, 309, 0, 0, 310, 0, 0, 0, 0, 0, 311, 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, 0, 0, 314, 0, 315, 0, 0, 316, 0, 0, 317, 0, 0, 0, 0, 0, 318, 0, 0, 0, 0, 0, 0, 0, 0, 319, 0, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, 321, 0, 322, 0, 0, 0, 0, 0, 0, 0, 0, 323, 0, 324, 0, 0, 325, 0, 0, 0, 0, 0, 326, 0, 327, 0, 0, 0, 0, 0, 0, 0, 0, 328, 0, 329, 0, 330, 0, 0, 0, 0, 0, 0, 0, 331, 0, 332, 0, 0, 0, 0, 0, 0, 0, 0, 333, 0, 334, 0, 0, 335, 0, 336, 0, 0, 0, 0, 0, 0, 337, 0, 0, 0, 338, 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, 339, 0, 0, 0, 0, 0, 0, 0, 340, 0, 0, 341, 0, 0, 0, 0, 0, 0, 342, 0, 343, 0, 344, 345, 0, 346, 0, 0, 0, 0, 347, 0, 0, 0, 348, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, 350, 0, 0, 0, 0, 0, 351, 0, 0, 0, 0, 0, 352, 0, 0, 0, 0, 0, 353, 0, 0, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 356, 0, 0, 0, 0, 0, 0, 0, 357, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 359, 0, 360, 0, 0, 361, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 365, 0, 0, 0, 366, 0, 0, 0, 0, 0, 0, 367, 0, 0, 0, 368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 369, 0, 0, 0, 0, 370, 0, 0, 371, 0, 0, 0, 372, 0, 0, 373, 0, 0, 0, 0, 0, 0, 0, 374, 0, 375, 0, 376, 0, 0, 0, 377, 0, 0, 0, 0, 0, 0, 0, 0, 378, 0, 379, 0, 0, 0, 0, 0, 0, 0, 380, 381, 0, 382, 0, 0, 0, 383, 0, 384, 0, 0, 385, 0, 0, 0, 0, 0, 0, 0, 0, 0, 386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 387, 0, 388, 0, 389, 0, 390, 0, 391, 0, 392, 0, 0, 0, 393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 394, 0, 395, 0, 0, 0, 396, 0, 0, 0, 0, 0, 0, 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 398, 0, 0, 0, 399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 400, 0, 401, 0, 0, 0, 402, 0, 0, 403, 0, 0, 0, 404, 0, 0, 405, 0, 0, 0, 406, 0, 0, 0, 407, 0, 408, 0, 0, 409, 0, 0, 0, 0, 0, 0, 0, 410, 411, 0, 412, 0, 0, 0, 413, 0, 0, 414, 0, 0, 0, 0, 415, 0, 0, 416, 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, 419, 0, 0, 0, 0, 420, 0, 421, 0, 0, 0, 0, 422, 0, 0, 0, 423, 0, 424, 0, 0, 0, 425, 0, 426, 0, 0, 0, 0, 427, 0, 428, 429, 0, 430, 0, 0, 0, 0, 0, 431, 0, 432, 0, 0, 0, 433, 0, 0, 0, 0, 434, 0, 0, 0, 0, 435, 0, 0, 436, 0, 437, 0, 0, 0, 438, 0, 439, 0, 0, 0, 0, 440, 0, 441, 442, 0, 443, 0, 0, 0, 0, 0, 444, 0, 445, 0, 0, 0, 446, 0, 0, 0, 0, 447, 0, 0, 0, 448, 449, 450, 0, 0, 0, 0, 0, 0, 0, 0, 0, 451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 452, 0, 0, 0, 0, 0, 453, 0, 0, 454, 0, 455, 0, 0, 456, 0, 0, 0, 457, 0, 458, 0, 459, 0, 460, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 462, 0, 463, 0, 0, 464, 0, 0, 465, 0, 0, 0, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 467, 0, 468, 0, 469, 0, 0, 0, 470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 473, 474, 0, 475, 0, 0, 476, 0, 477, 0, 478, 0, 479, 0, 0, 0, 480, 0, 481, 0, 482, 0, 0, 483, 0, 0, 0, 0, 484, 0, 485, 0, 0, 486, 0, 487, 0, 488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 489, 0, 0, 0, 0, 490, 0, 491, 0, 492, 0, 0, 0, 493, 0, 0, 0, 494, 0, 0, 495, 0, 496, 0, 0, 497, 0, 498, 0, 0, 499, 0, 500, 0, 0, 0, 501, 0, 0, 0, 0, 502, 0, 503, 0, 504, 0, 0, 0, 505, 0, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 509, 0, 510, 0, 0, 511, 0, 0, 512, 0, 513, 0, 0, 0, 0, 514, 0, 515, 0, 516, 0, 0, 0, 517, 0, 0, 518, 0, 0, 0, 519, 0, 520, 0, 0, 0, 521, 0, 522, 0, 523, 0, 0, 0, 524, 0, 0, 0, 525, 0, 526, 0, 527, 0, 528, 0, 0, 529, 0, 530, 0, 531, 0, 532, 0, 0, 0, 0, 0, 533, 0, 0, 0, 534, 0, 0, 0, 535, 0, 0, 536, 0, 0, 0, 0, 0, 537, 0, 0, 0, 0, 538, 0, 539, 0, 0, 0, 540, 0, 541, 0, 542, 0, 0, 0, 0, 543, 0, 0, 0, 0, 544, 0, 0, 0, 545, 0, 0, 0, 546, 0, 0, 0, 547, 0, 0, 0, 0, 0, 0, 0, 548, 0, 0, 0, 549, 0, 0, 0, 0, 550, 0, 0, 551, 0, 0, 0, 0, 0, 0, 552, 0, 0, 553, 0, 554, 0, 0, 555, 0, 556, 0, 0, 557, 558, 0, 0, 559, 0, 560, 0, 0, 0, 561, 0, 0, 0, 0, 0, 562, 0, 0, 0, 0, 563, 0, 0, 0, 0, 0, 0, 564, 0, 0, 565, 0, 0, 0, 0, 0, 0, 0, 0, 0, 566, 567, 0, 568, 0, 0, 0, 569, 0, 0, 0, 0, 570, 0, 0, 0, 0, 0, 571, 0, 0, 0, 0, 0, 572, 0, 0, 573, 0, 574, 0, 0, 0, 575, 0, 0, 576, 0, 0, 577, 0, 578, 0, 579, 0, 0, 0, 580, 0, 581, 0, 582, 0, 583, 0, 584, 0, 0, 0, 585, 0, 586, 0, 0, 0, 0, 0, 0, 0, 0, 587, 0, 588, 0, 0, 0, 0, 0, 0, 589, 0, 590, 0, 0, 0, 591, 0, 592, 0, 0, 593, 0, 594, 0, 595, 0, 0, 596, 0, 597, 0, 598, 0, 599, 0, 600, 0, 0, 601, 0, 602, 0, 0, 0, 0, 603, 0, 0, 0, 0, 0, 0, 604, 0, 605, 0, 0, 0, 0, 0, 606, 0, 0, 0, 607, 0, 608, 0, 0, 609, 0, 610, 0, 0, 0, 0, 611, 0, 0, 0, 0, 0, 612, 0, 0, 0, 0, 0, 613, 0, 0, 0, 614, 0, 615, 0, 0, 0, 616, 0, 0, 0, 0, 0, 0, 0, 617, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 618, 0, 0, 0, 0, 0, 619, 0, 0, 0, 0, 0, 620, 0, 0, 0, 621, 0, 0, 622, 0, 623, 0, 0, 0, 624, 0, 0, 0, 625, 0, 626, 0, 0, 0, 0, 0, 0, 0, 627, 0, 0, 0, 0, 628, 0, 0, 0, 629, 0, 0, 0, 0, 630, 0, 0, 631, 0, 632, 0, 0, 0, 633, 0, 0, 634, 0, 635, 0, 636, 0, 637, 0, 638, 0, 639, 0, 0, 0, 0, 0, 640, 641, 0, 0, 642, 0, 0, 0, 0, 643, 0, 644, 0, 0, 0, 0, 645, 0, 0, 0, 0, 646, 0, 647, 0, 0, 648, 0, 0, 0, 649, 0, 650, 0, 0, 0, 0, 651, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 652, 0, 0, 0, 0, 0, 0, 0, 0, 653, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 655, 0, 0, 0, 0, 0, 656, 0, 0, 0, 0, 0, 0, 0, 0, 0, 657, 0, 0, 658, 0, 0, 659, 0, 660, 0, 661, 0, 662, 0, 0, 0, 0, 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 664, 0, 0, 0, 0, 0, 0, 0, 665, 0, 0, 0, 0, 0, 666, 0, 0, 667, 668, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 669, 0, 0, 0, 0, 670, 0, 0, 0, 0, 0, 0, 0, 0, 0, 671, 0, 0, 0, 0, 0, 0, 0, 0, 0, 672, 0, 0, 0, 0, 0, 0, 673, 0, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 676, 0, 677, 0, 0, 0, 0, 0, 0, 0, 678, 0, 0, 679, 0, 0, 0, 0, 0, 680, 681, 0, 0, 0, 0, 0, 682, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 684, 0, 0, 0, 0, 685, 0, 0, 0, 0, 686, 0, 0, 0, 687, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 688, 0, 0, 689, 0, 0, 0, 0, 0, 0, 690, 0, 0, 0, 0, 0, 0, 0, 0, 691, 0, 692, 0, 693, 0, 0, 0, 694, 0, 0, 0, 0, 0, 0, 695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 696, 0, 0, 697, 0, 0, 0, 0, 0, 0, 698, 0, 0, 0, 0, 0, 0, 0, 0, 699, 0, 700, 0, 701, 0, 0, 0, 702, 0, 0, 0, 0, 0, 0, 703, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 704, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 705, 0, 706, 0, 0, 0, 707, 0, 708, 0, 0, 0, 709, 0, 710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 711, 0, 712, 713, 0, 0, 0, 0, 0, 0, 0, 0, 714, 0, 715, 0, 0, 0, 0, 0, 0, 0, 716, 0, 0, 717, 0, 0, 0, 0, 0, 718, 719, 0, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0, 0, 721, 0, 0, 722, 0, 723, 0, 724, 0, 725, 0, 0, 0, 0, 726, 0, 0, 0, 0, 0, 0, 0, 727, 0, 728, 0, 0, 0, 0, 729, 0, 0, 0, 730, 0, 0, 0, 731, 0, 0, 0, 0, 0, 0, 732, 0, 733, 734, 0, 0, 0, 0, 0, 0, 0, 0, 735, 0, 736, 0, 0, 0, 0, 0, 0, 0, 737, 0, 0, 738, 0, 0, 0, 0, 0, 739, 740, 0, 0, 0, 0, 0, 741, 0, 0, 0, 0, 0, 0, 0, 0, 0, 742, 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, 743, 0, 0, 0, 0, 0, 744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 745, 0, 0, 0, 0, 0, 0, 0, 746, 0, 0, 0, 0, 0, 747, 0, 0, 0, 0, 0, 0, 0, 748, 0, 0, 749, 0, 0, 0, 0, 0, 0, 0, 750, 0, 0, 0, 0, 0, 0, 0, 751, 0, 0, 752, 0, 753, 0, 754, 0, 0, 0, 0, 755, 0, 0, 0, 0, 0, 0, 0, 0, 0, 756, 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, 757, 0, 0, 0, 0, 0, 758, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 759, 0, 0, 760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 761, 0, 0, 0, 0, 0, 0, 762, 0, 763, 0, 764, 0, 0, 0, 0, 765, 766, 0, 0, 0, 767, 0, 768, 0, 769, 0, 0, 0, 0, 0, 0, 0, 0, 770, 0, 0, 0, 0, 771, }; void recomp_unit_0031_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 - 0x08880000u; entry_id = (entry_delta < 16376u && (entry_delta & 3u) == 0u) ? kEntryIds_recomp_unit_0031[entry_delta >> 2u] : 0u; } switch (entry_id) { case 1u: goto L_08880000; case 2u: goto L_0888002C; case 3u: goto L_08880040; case 4u: goto L_0888004C; case 5u: goto L_08880064; case 6u: goto L_08880078; case 7u: goto L_08880090; case 8u: goto L_088800E0; case 9u: goto L_088800EC; case 10u: goto L_088800F8; case 11u: goto L_08880108; case 12u: goto L_08880118; case 13u: goto L_0888012C; case 14u: goto L_08880130; case 15u: goto L_08880148; case 16u: goto L_08880154; case 17u: goto L_08880160; case 18u: goto L_08880194; case 19u: goto L_088801A4; case 20u: goto L_08880218; case 21u: goto L_0888021C; case 22u: goto L_08880228; case 23u: goto L_08880234; case 24u: goto L_0888023C; case 25u: goto L_08880270; case 26u: goto L_08880298; case 27u: goto L_088802BC; case 28u: goto L_088802E0; case 29u: goto L_088802F8; case 30u: goto L_08880320; case 31u: goto L_08880328; case 32u: goto L_08880344; case 33u: goto L_0888043C; case 34u: goto L_08880454; case 35u: goto L_08880464; case 36u: goto L_08880494; case 37u: goto L_088804C8; case 38u: goto L_088804D0; case 39u: goto L_088804E4; case 40u: goto L_08880500; case 41u: goto L_08880564; case 42u: goto L_08880570; case 43u: goto L_088805A4; case 44u: goto L_088805B4; case 45u: goto L_088805C0; case 46u: goto L_088805C8; case 47u: goto L_088805F0; case 48u: goto L_08880630; case 49u: goto L_08880644; case 50u: goto L_08880658; case 51u: goto L_0888067C; case 52u: goto L_08880684; case 53u: goto L_08880690; case 54u: goto L_088806B4; case 55u: goto L_088806BC; case 56u: goto L_088806C8; case 57u: goto L_088806EC; case 58u: goto L_088806F8; case 59u: goto L_08880738; case 60u: goto L_08880744; case 61u: goto L_08880754; case 62u: goto L_0888075C; case 63u: goto L_08880768; case 64u: goto L_08880770; case 65u: goto L_08880784; case 66u: goto L_088807A8; case 67u: goto L_088807D8; case 68u: goto L_088807E8; case 69u: goto L_088807F0; case 70u: goto L_08880804; case 71u: goto L_0888081C; case 72u: goto L_08880838; case 73u: goto L_08880844; case 74u: goto L_08880854; case 75u: goto L_0888085C; case 76u: goto L_0888087C; case 77u: goto L_08880888; case 78u: goto L_0888088C; case 79u: goto L_0888089C; case 80u: goto L_088808D4; case 81u: goto L_088808E0; case 82u: goto L_088808E8; case 83u: goto L_088808F4; case 84u: goto L_08880900; case 85u: goto L_08880908; case 86u: goto L_0888091C; case 87u: goto L_08880938; case 88u: goto L_08880958; case 89u: goto L_08880960; case 90u: goto L_08880970; case 91u: goto L_08880980; case 92u: goto L_08880984; case 93u: goto L_0888098C; case 94u: goto L_08880994; case 95u: goto L_088809AC; case 96u: goto L_088809B0; case 97u: goto L_088809B4; case 98u: goto L_088809E4; case 99u: goto L_088809EC; case 100u: goto L_088809F0; case 101u: goto L_088809F8; case 102u: goto L_08880A90; case 103u: goto L_08880AAC; case 104u: goto L_08880ACC; case 105u: goto L_08880AD4; case 106u: goto L_08880AF4; case 107u: goto L_08880AFC; case 108u: goto L_08880B10; case 109u: goto L_08880B2C; case 110u: goto L_08880B40; case 111u: goto L_08880B48; case 112u: goto L_08880B4C; case 113u: goto L_08880B54; case 114u: goto L_08880B58; case 115u: goto L_08880B60; case 116u: goto L_08880B74; case 117u: goto L_08880B90; case 118u: goto L_08880BA4; case 119u: goto L_08880BAC; case 120u: goto L_08880BB0; case 121u: goto L_08880BB8; case 122u: goto L_08880BBC; case 123u: goto L_08880BC4; case 124u: goto L_08880BC8; case 125u: goto L_08880BE0; case 126u: goto L_08880BEC; case 127u: goto L_08880C00; case 128u: goto L_08880C08; case 129u: goto L_08880C18; case 130u: goto L_08880C64; case 131u: goto L_08880C84; case 132u: goto L_08880C8C; case 133u: goto L_08880CAC; case 134u: goto L_08880CB4; case 135u: goto L_08880CC8; case 136u: goto L_08880CE4; case 137u: goto L_08880CF8; case 138u: goto L_08880D00; case 139u: goto L_08880D04; case 140u: goto L_08880D0C; case 141u: goto L_08880D10; case 142u: goto L_08880D18; case 143u: goto L_08880D2C; case 144u: goto L_08880D48; case 145u: goto L_08880D5C; case 146u: goto L_08880D64; case 147u: goto L_08880D68; case 148u: goto L_08880D70; case 149u: goto L_08880D74; case 150u: goto L_08880D7C; case 151u: goto L_08880D80; case 152u: goto L_08880D98; case 153u: goto L_08880DA4; case 154u: goto L_08880DB8; case 155u: goto L_08880DC0; case 156u: goto L_08880DD0; case 157u: goto L_08880E10; case 158u: goto L_08880E2C; case 159u: goto L_08880E38; case 160u: goto L_08880E4C; case 161u: goto L_08880E64; case 162u: goto L_08880E78; case 163u: goto L_08880E94; case 164u: goto L_08880EA8; case 165u: goto L_08880EB0; case 166u: goto L_08880EB4; case 167u: goto L_08880EBC; case 168u: goto L_08880EC0; case 169u: goto L_08880EC8; case 170u: goto L_08880EDC; case 171u: goto L_08880EF8; case 172u: goto L_08880F0C; case 173u: goto L_08880F14; case 174u: goto L_08880F18; case 175u: goto L_08880F20; case 176u: goto L_08880F24; case 177u: goto L_08880F2C; case 178u: goto L_08880F48; case 179u: goto L_08880F64; case 180u: goto L_08880F78; case 181u: goto L_08880F80; case 182u: goto L_08880F84; case 183u: goto L_08880F8C; case 184u: goto L_08880F90; case 185u: goto L_08880F98; case 186u: goto L_08880F9C; case 187u: goto L_08880FB4; case 188u: goto L_08880FC0; case 189u: goto L_08880FD4; case 190u: goto L_08880FE0; case 191u: goto L_08880FE8; case 192u: goto L_08880FF4; case 193u: goto L_08881020; case 194u: goto L_08881028; case 195u: goto L_08881038; case 196u: goto L_08881070; case 197u: goto L_08881080; case 198u: goto L_088810CC; case 199u: goto L_088810D4; case 200u: goto L_088810F0; case 201u: goto L_08881104; case 202u: goto L_0888110C; case 203u: goto L_08881110; case 204u: goto L_08881118; case 205u: goto L_0888111C; case 206u: goto L_08881124; case 207u: goto L_08881128; case 208u: goto L_08881140; case 209u: goto L_0888114C; case 210u: goto L_08881160; case 211u: goto L_08881168; case 212u: goto L_08881178; case 213u: goto L_088811C4; case 214u: goto L_088811E0; case 215u: goto L_088811EC; case 216u: goto L_088811F4; case 217u: goto L_08881210; case 218u: goto L_08881220; case 219u: goto L_0888122C; case 220u: goto L_08881274; case 221u: goto L_088812A8; case 222u: goto L_088812B4; case 223u: goto L_088812C8; case 224u: goto L_088812D0; case 225u: goto L_088812D8; case 226u: goto L_088812F0; case 227u: goto L_088812F8; case 228u: goto L_0888134C; case 229u: goto L_088813FC; case 230u: goto L_08881410; case 231u: goto L_08881418; case 232u: goto L_08881420; case 233u: goto L_0888142C; case 234u: goto L_08881454; case 235u: goto L_0888149C; case 236u: goto L_088814B0; case 237u: goto L_088814B8; case 238u: goto L_088814C0; case 239u: goto L_088814C4; case 240u: goto L_088814E8; case 241u: goto L_088814FC; case 242u: goto L_08881510; case 243u: goto L_08881518; case 244u: goto L_08881524; case 245u: goto L_0888152C; case 246u: goto L_08881540; case 247u: goto L_0888154C; case 248u: goto L_08881560; case 249u: goto L_088815C4; case 250u: goto L_088815D0; case 251u: goto L_088815D4; case 252u: goto L_088815EC; case 253u: goto L_08881780; case 254u: goto L_08881798; case 255u: goto L_088817A4; case 256u: goto L_088817D4; case 257u: goto L_088817E4; case 258u: goto L_088817F0; case 259u: goto L_088817F8; case 260u: goto L_08881838; case 261u: goto L_088818A4; case 262u: goto L_088818C4; case 263u: goto L_088818CC; case 264u: goto L_088818D8; case 265u: goto L_088818E4; case 266u: goto L_088818F4; case 267u: goto L_0888190C; case 268u: goto L_08881914; case 269u: goto L_08881920; case 270u: goto L_0888192C; case 271u: goto L_0888193C; case 272u: goto L_08881944; case 273u: goto L_0888195C; case 274u: goto L_08881968; case 275u: goto L_08881974; case 276u: goto L_08881984; case 277u: goto L_0888198C; case 278u: goto L_088819B4; case 279u: goto L_088819C0; case 280u: goto L_088819CC; case 281u: goto L_088819E0; case 282u: goto L_088819E8; case 283u: goto L_08881A80; case 284u: goto L_08881A8C; case 285u: goto L_08881A98; case 286u: goto L_08881AAC; case 287u: goto L_08881AB4; case 288u: goto L_08881B80; case 289u: goto L_08881B8C; case 290u: goto L_08881B98; case 291u: goto L_08881BA8; case 292u: goto L_08881BB0; case 293u: goto L_08881BC8; case 294u: goto L_08881BD4; case 295u: goto L_08881BE0; case 296u: goto L_08881BF0; case 297u: goto L_08881BF8; case 298u: goto L_08881C08; case 299u: goto L_08881C24; case 300u: goto L_08881C4C; case 301u: goto L_08881C54; case 302u: goto L_08881C5C; case 303u: goto L_08881C80; case 304u: goto L_08881CA8; case 305u: goto L_08881CC4; case 306u: goto L_08881CD0; case 307u: goto L_08881D60; case 308u: goto L_08881D80; case 309u: goto L_08881D9C; case 310u: goto L_08881DA8; case 311u: goto L_08881DC0; case 312u: goto L_08881DC8; case 313u: goto L_08881DFC; case 314u: goto L_08881E18; case 315u: goto L_08881E20; case 316u: goto L_08881E2C; case 317u: goto L_08881E38; case 318u: goto L_08881E50; case 319u: goto L_08881E74; case 320u: goto L_08881E8C; case 321u: goto L_08881EB0; case 322u: goto L_08881EB8; case 323u: goto L_08881EDC; case 324u: goto L_08881EE4; case 325u: goto L_08881EF0; case 326u: goto L_08881F08; case 327u: goto L_08881F10; case 328u: goto L_08881F34; case 329u: goto L_08881F3C; case 330u: goto L_08881F44; case 331u: goto L_08881F64; case 332u: goto L_08881F6C; case 333u: goto L_08881F90; case 334u: goto L_08881F98; case 335u: goto L_08881FA4; case 336u: goto L_08881FAC; case 337u: goto L_08881FC8; case 338u: goto L_08881FD8; case 339u: goto L_08882080; case 340u: goto L_088820A0; case 341u: goto L_088820AC; case 342u: goto L_088820C8; case 343u: goto L_088820D0; case 344u: goto L_088820D8; case 345u: goto L_088820DC; case 346u: goto L_088820E4; case 347u: goto L_088820F8; case 348u: goto L_08882108; case 349u: goto L_08882114; case 350u: goto L_08882134; case 351u: goto L_0888214C; case 352u: goto L_08882164; case 353u: goto L_0888217C; case 354u: goto L_08882188; case 355u: goto L_088821D8; case 356u: goto L_088821F8; case 357u: goto L_08882218; case 358u: goto L_08882238; case 359u: goto L_08882248; case 360u: goto L_08882250; case 361u: goto L_0888225C; case 362u: goto L_08882274; case 363u: goto L_088822C4; case 364u: goto L_08882308; case 365u: goto L_08882340; case 366u: goto L_08882350; case 367u: goto L_0888236C; case 368u: goto L_0888237C; case 369u: goto L_088823BC; case 370u: goto L_088823D0; case 371u: goto L_088823DC; case 372u: goto L_088823EC; case 373u: goto L_088823F8; case 374u: goto L_08882418; case 375u: goto L_08882420; case 376u: goto L_08882428; case 377u: goto L_08882438; case 378u: goto L_0888245C; case 379u: goto L_08882464; case 380u: goto L_08882484; case 381u: goto L_08882488; case 382u: goto L_08882490; case 383u: goto L_088824A0; case 384u: goto L_088824A8; case 385u: goto L_088824B4; case 386u: goto L_088824DC; case 387u: goto L_08882504; case 388u: goto L_0888250C; case 389u: goto L_08882514; case 390u: goto L_0888251C; case 391u: goto L_08882524; case 392u: goto L_0888252C; case 393u: goto L_0888253C; case 394u: goto L_08882564; case 395u: goto L_0888256C; case 396u: goto L_0888257C; case 397u: goto L_08882598; case 398u: goto L_088825D4; case 399u: goto L_088825E4; case 400u: goto L_0888260C; case 401u: goto L_08882614; case 402u: goto L_08882624; case 403u: goto L_08882630; case 404u: goto L_08882640; case 405u: goto L_0888264C; case 406u: goto L_0888265C; case 407u: goto L_0888266C; case 408u: goto L_08882674; case 409u: goto L_08882680; case 410u: goto L_088826A0; case 411u: goto L_088826A4; case 412u: goto L_088826AC; case 413u: goto L_088826BC; case 414u: goto L_088826C8; case 415u: goto L_088826DC; case 416u: goto L_088826E8; case 417u: goto L_08882704; case 418u: goto L_08882720; case 419u: goto L_08882730; case 420u: goto L_08882744; case 421u: goto L_0888274C; case 422u: goto L_08882760; case 423u: goto L_08882770; case 424u: goto L_08882778; case 425u: goto L_08882788; case 426u: goto L_08882790; case 427u: goto L_088827A4; case 428u: goto L_088827AC; case 429u: goto L_088827B0; case 430u: goto L_088827B8; case 431u: goto L_088827D0; case 432u: goto L_088827D8; case 433u: goto L_088827E8; case 434u: goto L_088827FC; case 435u: goto L_08882810; case 436u: goto L_0888281C; case 437u: goto L_08882824; case 438u: goto L_08882834; case 439u: goto L_0888283C; case 440u: goto L_08882850; case 441u: goto L_08882858; case 442u: goto L_0888285C; case 443u: goto L_08882864; case 444u: goto L_0888287C; case 445u: goto L_08882884; case 446u: goto L_08882894; case 447u: goto L_088828A8; case 448u: goto L_088828B8; case 449u: goto L_088828BC; case 450u: goto L_088828C0; case 451u: goto L_088828E8; case 452u: goto L_08882930; case 453u: goto L_08882948; case 454u: goto L_08882954; case 455u: goto L_0888295C; case 456u: goto L_08882968; case 457u: goto L_08882978; case 458u: goto L_08882980; case 459u: goto L_08882988; case 460u: goto L_08882990; case 461u: goto L_088829A4; case 462u: goto L_088829C8; case 463u: goto L_088829D0; case 464u: goto L_088829DC; case 465u: goto L_088829E8; case 466u: goto L_088829F8; case 467u: goto L_08882A30; case 468u: goto L_08882A38; case 469u: goto L_08882A40; case 470u: goto L_08882A50; case 471u: goto L_08882A7C; case 472u: goto L_08882AA4; case 473u: goto L_08882AD4; case 474u: goto L_08882AD8; case 475u: goto L_08882AE0; case 476u: goto L_08882AEC; case 477u: goto L_08882AF4; case 478u: goto L_08882AFC; case 479u: goto L_08882B04; case 480u: goto L_08882B14; case 481u: goto L_08882B1C; case 482u: goto L_08882B24; case 483u: goto L_08882B30; case 484u: goto L_08882B44; case 485u: goto L_08882B4C; case 486u: goto L_08882B58; case 487u: goto L_08882B60; case 488u: goto L_08882B68; case 489u: goto L_08882B94; case 490u: goto L_08882BA8; case 491u: goto L_08882BB0; case 492u: goto L_08882BB8; case 493u: goto L_08882BC8; case 494u: goto L_08882BD8; case 495u: goto L_08882BE4; case 496u: goto L_08882BEC; case 497u: goto L_08882BF8; case 498u: goto L_08882C00; case 499u: goto L_08882C0C; case 500u: goto L_08882C14; case 501u: goto L_08882C24; case 502u: goto L_08882C38; case 503u: goto L_08882C40; case 504u: goto L_08882C48; case 505u: goto L_08882C58; case 506u: goto L_08882C60; case 507u: goto L_08882C78; case 508u: goto L_08882C80; case 509u: goto L_08882C88; case 510u: goto L_08882C90; case 511u: goto L_08882C9C; case 512u: goto L_08882CA8; case 513u: goto L_08882CB0; case 514u: goto L_08882CC4; case 515u: goto L_08882CCC; case 516u: goto L_08882CD4; case 517u: goto L_08882CE4; case 518u: goto L_08882CF0; case 519u: goto L_08882D00; case 520u: goto L_08882D08; case 521u: goto L_08882D18; case 522u: goto L_08882D20; case 523u: goto L_08882D28; case 524u: goto L_08882D38; case 525u: goto L_08882D48; case 526u: goto L_08882D50; case 527u: goto L_08882D58; case 528u: goto L_08882D60; case 529u: goto L_08882D6C; case 530u: goto L_08882D74; case 531u: goto L_08882D7C; case 532u: goto L_08882D84; case 533u: goto L_08882D9C; case 534u: goto L_08882DAC; case 535u: goto L_08882DBC; case 536u: goto L_08882DC8; case 537u: goto L_08882DE0; case 538u: goto L_08882DF4; case 539u: goto L_08882DFC; case 540u: goto L_08882E0C; case 541u: goto L_08882E14; case 542u: goto L_08882E1C; case 543u: goto L_08882E30; case 544u: goto L_08882E44; case 545u: goto L_08882E54; case 546u: goto L_08882E64; case 547u: goto L_08882E74; case 548u: goto L_08882E94; case 549u: goto L_08882EA4; case 550u: goto L_08882EB8; case 551u: goto L_08882EC4; case 552u: goto L_08882EE0; case 553u: goto L_08882EEC; case 554u: goto L_08882EF4; case 555u: goto L_08882F00; case 556u: goto L_08882F08; case 557u: goto L_08882F14; case 558u: goto L_08882F18; case 559u: goto L_08882F24; case 560u: goto L_08882F2C; case 561u: goto L_08882F3C; case 562u: goto L_08882F54; case 563u: goto L_08882F68; case 564u: goto L_08882F84; case 565u: goto L_08882F90; case 566u: goto L_08882FB8; case 567u: goto L_08882FBC; case 568u: goto L_08882FC4; case 569u: goto L_08882FD4; case 570u: goto L_08882FE8; case 571u: goto L_08883000; case 572u: goto L_08883018; case 573u: goto L_08883024; case 574u: goto L_0888302C; case 575u: goto L_0888303C; case 576u: goto L_08883048; case 577u: goto L_08883054; case 578u: goto L_0888305C; case 579u: goto L_08883064; case 580u: goto L_08883074; case 581u: goto L_0888307C; case 582u: goto L_08883084; case 583u: goto L_0888308C; case 584u: goto L_08883094; case 585u: goto L_088830A4; case 586u: goto L_088830AC; case 587u: goto L_088830D0; case 588u: goto L_088830D8; case 589u: goto L_088830F4; case 590u: goto L_088830FC; case 591u: goto L_0888310C; case 592u: goto L_08883114; case 593u: goto L_08883120; case 594u: goto L_08883128; case 595u: goto L_08883130; case 596u: goto L_0888313C; case 597u: goto L_08883144; case 598u: goto L_0888314C; case 599u: goto L_08883154; case 600u: goto L_0888315C; case 601u: goto L_08883168; case 602u: goto L_08883170; case 603u: goto L_08883184; case 604u: goto L_088831A0; case 605u: goto L_088831A8; case 606u: goto L_088831C0; case 607u: goto L_088831D0; case 608u: goto L_088831D8; case 609u: goto L_088831E4; case 610u: goto L_088831EC; case 611u: goto L_08883200; case 612u: goto L_08883218; case 613u: goto L_08883230; case 614u: goto L_08883240; case 615u: goto L_08883248; case 616u: goto L_08883258; case 617u: goto L_08883278; case 618u: goto L_088832C4; case 619u: goto L_088832DC; case 620u: goto L_088832F4; case 621u: goto L_08883304; case 622u: goto L_08883310; case 623u: goto L_08883318; case 624u: goto L_08883328; case 625u: goto L_08883338; case 626u: goto L_08883340; case 627u: goto L_08883360; case 628u: goto L_08883374; case 629u: goto L_08883384; case 630u: goto L_08883398; case 631u: goto L_088833A4; case 632u: goto L_088833AC; case 633u: goto L_088833BC; case 634u: goto L_088833C8; case 635u: goto L_088833D0; case 636u: goto L_088833D8; case 637u: goto L_088833E0; case 638u: goto L_088833E8; case 639u: goto L_088833F0; case 640u: goto L_08883408; case 641u: goto L_0888340C; case 642u: goto L_08883418; case 643u: goto L_0888342C; case 644u: goto L_08883434; case 645u: goto L_08883448; case 646u: goto L_0888345C; case 647u: goto L_08883464; case 648u: goto L_08883470; case 649u: goto L_08883480; case 650u: goto L_08883488; case 651u: goto L_0888349C; case 652u: goto L_088834E8; case 653u: goto L_0888350C; case 654u: goto L_08883534; case 655u: goto L_08883570; case 656u: goto L_08883588; case 657u: goto L_088835B0; case 658u: goto L_088835BC; case 659u: goto L_088835C8; case 660u: goto L_088835D0; case 661u: goto L_088835D8; case 662u: goto L_088835E0; case 663u: goto L_088835F8; case 664u: goto L_08883638; case 665u: goto L_08883658; case 666u: goto L_08883670; case 667u: goto L_0888367C; case 668u: goto L_08883680; case 669u: goto L_088836B0; case 670u: goto L_088836C4; case 671u: goto L_088836EC; case 672u: goto L_08883714; case 673u: goto L_08883730; case 674u: goto L_08883738; case 675u: goto L_0888373C; case 676u: goto L_08883760; case 677u: goto L_08883768; case 678u: goto L_08883788; case 679u: goto L_08883794; case 680u: goto L_088837AC; case 681u: goto L_088837B0; case 682u: goto L_088837C8; case 683u: goto L_088837E8; case 684u: goto L_08883800; case 685u: goto L_08883814; case 686u: goto L_08883828; case 687u: goto L_08883838; case 688u: goto L_08883868; case 689u: goto L_08883874; case 690u: goto L_08883890; case 691u: goto L_088838B4; case 692u: goto L_088838BC; case 693u: goto L_088838C4; case 694u: goto L_088838D4; case 695u: goto L_088838F0; case 696u: goto L_08883920; case 697u: goto L_0888392C; case 698u: goto L_08883948; case 699u: goto L_0888396C; case 700u: goto L_08883974; case 701u: goto L_0888397C; case 702u: goto L_0888398C; case 703u: goto L_088839A8; case 704u: goto L_088839D8; case 705u: goto L_08883A08; case 706u: goto L_08883A10; case 707u: goto L_08883A20; case 708u: goto L_08883A28; case 709u: goto L_08883A38; case 710u: goto L_08883A40; case 711u: goto L_08883A68; case 712u: goto L_08883A70; case 713u: goto L_08883A74; case 714u: goto L_08883A98; case 715u: goto L_08883AA0; case 716u: goto L_08883AC0; case 717u: goto L_08883ACC; case 718u: goto L_08883AE4; case 719u: goto L_08883AE8; case 720u: goto L_08883B04; case 721u: goto L_08883B24; case 722u: goto L_08883B30; case 723u: goto L_08883B38; case 724u: goto L_08883B40; case 725u: goto L_08883B48; case 726u: goto L_08883B5C; case 727u: goto L_08883B7C; case 728u: goto L_08883B84; case 729u: goto L_08883B98; case 730u: goto L_08883BA8; case 731u: goto L_08883BB8; case 732u: goto L_08883BD4; case 733u: goto L_08883BDC; case 734u: goto L_08883BE0; case 735u: goto L_08883C04; case 736u: goto L_08883C0C; case 737u: goto L_08883C2C; case 738u: goto L_08883C38; case 739u: goto L_08883C50; case 740u: goto L_08883C54; case 741u: goto L_08883C6C; case 742u: goto L_08883C94; case 743u: goto L_08883D18; case 744u: goto L_08883D30; case 745u: goto L_08883D58; case 746u: goto L_08883D78; case 747u: goto L_08883D90; case 748u: goto L_08883DB0; case 749u: goto L_08883DBC; case 750u: goto L_08883DDC; case 751u: goto L_08883DFC; case 752u: goto L_08883E08; case 753u: goto L_08883E10; case 754u: goto L_08883E18; case 755u: goto L_08883E2C; case 756u: goto L_08883E54; case 757u: goto L_08883EC0; case 758u: goto L_08883ED8; case 759u: goto L_08883F14; case 760u: goto L_08883F20; case 761u: goto L_08883F58; case 762u: goto L_08883F74; case 763u: goto L_08883F7C; case 764u: goto L_08883F84; case 765u: goto L_08883F98; case 766u: goto L_08883F9C; case 767u: goto L_08883FAC; case 768u: goto L_08883FB4; case 769u: goto L_08883FBC; case 770u: goto L_08883FE0; case 771u: goto L_08883FF4; default: if (local_transfers == 0u) rt.unsupported(ctx.pc, 0u, "invalid internal function entry"); else ctx.pc = local_pc; return; } } L_08880000: ctx.gpr[17] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), 0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); ctx.gpr[5] = (0u + static_cast(-2)); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(104), ctx.gpr[4]); ctx.gpr[19] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[4] = (ctx.gpr[17] + static_cast(40)); ctx.gpr[16] = (ctx.gpr[29] + static_cast(16)); ctx.gpr[31] = (0x0888002Cu); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0030_entry, 30u, 848u, 0x0887FF8Cu>(ctx, &aot_mem) && ctx.pc == 0x0888002Cu) goto L_0888002C; return; L_0888002C: 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] = (0x08880040u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08880040u) goto L_08880040; return; L_08880040: ctx.gpr[4] = (ctx.gpr[17] + static_cast(4)); ctx.gpr[31] = (0x0888004Cu); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0030_entry, 30u, 848u, 0x0887FF8Cu>(ctx, &aot_mem) && ctx.pc == 0x0888004Cu) goto L_0888004C; return; L_0888004C: { 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<0u, 4u>(vfpu_value); } ctx.gpr[23] = (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[23] + 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] + static_cast(16)); ctx.gpr[31] = (0x08880064u); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0030_entry, 30u, 848u, 0x0887FF8Cu>(ctx, &aot_mem) && ctx.pc == 0x08880064u) goto L_08880064; return; L_08880064: { 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<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[4] = (ctx.gpr[17] + static_cast(28)); ctx.gpr[31] = (0x08880078u); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0030_entry, 30u, 848u, 0x0887FF8Cu>(ctx, &aot_mem) && ctx.pc == 0x08880078u) goto L_08880078; return; L_08880078: { 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<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.gpr[4] = (ctx.gpr[17] + static_cast(52)); ctx.gpr[31] = (0x08880090u); ctx.gpr[5] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0030_entry, 30u, 848u, 0x0887FF8Cu>(ctx, &aot_mem) && ctx.pc == 0x08880090u) goto L_08880090; return; L_08880090: { 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<0u, 4u>(vfpu_value); } ctx.gpr[20] = (ctx.gpr[29] + static_cast(112)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[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[4] = (aot_mem.aot_load8(ctx.gpr[17] + static_cast(64))); ctx.gpr[5] = (rt.memory().aot_load_word_right(ctx.gpr[17] + static_cast(65), ctx.gpr[5])); ctx.gpr[5] = (rt.memory().aot_load_word_left(ctx.gpr[17] + static_cast(68), ctx.gpr[5])); aot_mem.aot_store8(ctx.gpr[29] + static_cast(228), static_cast(ctx.gpr[4])); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[1] = (rt.memory().aot_load_word_right(ctx.gpr[17] + static_cast(69), ctx.gpr[1])); ctx.gpr[1] = (rt.memory().aot_load_word_left(ctx.gpr[17] + static_cast(72), ctx.gpr[1])); ctx.fpr[20] = std::bit_cast(ctx.gpr[1]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(224), ctx.gpr[4]); ctx.gpr[30] = (aot_mem.aot_load8(ctx.gpr[17] + static_cast(73))); ctx.gpr[22] = (0u | 0u); ctx.gpr[18] = (2237u << 16u); ctx.gpr[18] = (ctx.gpr[18] + static_cast(-28736)); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x088800E0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0182_entry, 182u, 12u, 0x08ADC0F0u>(ctx, &aot_mem) && ctx.pc == 0x088800E0u) goto L_088800E0; return; L_088800E0: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_08880130; } goto L_088800EC; } L_088800EC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(96))); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(96))); goto L_08880118; } goto L_088800F8; L_088800F8: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[16] + static_cast(10)))))); ctx.gpr[6] = (ctx.gpr[29] + static_cast(176)); ctx.gpr[31] = (0x08880108u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0166_entry, 166u, 47u, 0x08A9C6FCu>(ctx, &aot_mem) && ctx.pc == 0x08880108u) goto L_08880108; return; L_08880108: aot_mem.aot_store32(ctx.gpr[16] + static_cast(96), ctx.gpr[2]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(176))); aot_mem.aot_store8(ctx.gpr[16] + static_cast(4), static_cast(ctx.gpr[4])); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(96))); goto L_08880118; L_08880118: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(102))); ctx.gpr[4] = (ctx.gpr[4] & 1u); ctx.gpr[4] = (ctx.gpr[4] & 255u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08880130; } goto L_0888012C; } L_0888012C: ctx.gpr[22] = (0u | 1u); goto L_08880130; L_08880130: ctx.gpr[6] = (rt.memory().aot_load_word_right(ctx.gpr[17] + static_cast(74), ctx.gpr[6])); ctx.gpr[6] = (rt.memory().aot_load_word_left(ctx.gpr[17] + static_cast(77), ctx.gpr[6])); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[6] = (ctx.gpr[6] & 65535u); ctx.gpr[31] = (0x08880148u); ctx.gpr[5] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0182_entry, 182u, 192u, 0x08ADCA6Cu>(ctx, &aot_mem) && ctx.pc == 0x08880148u) goto L_08880148; return; L_08880148: ctx.gpr[18] = (ctx.gpr[2] | 0u); if (ctx.gpr[18] == 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); goto L_0888021C; } goto L_08880154; L_08880154: ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(112))); { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08880218; } goto L_08880160; } L_08880160: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[17] + static_cast(3))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[8] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(228))); ctx.gpr[2] = (0u | 1u); ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(224))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[2]); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[6] = (ctx.gpr[19] | 0u); ctx.gpr[7] = (ctx.gpr[20] | 0u); ctx.gpr[10] = (ctx.gpr[30] | 0u); ctx.gpr[11] = (ctx.gpr[22] | 0u); ctx.gpr[31] = (0x08880194u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[21]); goto L_08881838; L_08880194: ctx.gpr[21] = (ctx.gpr[2] | 0u); ctx.gpr[4] = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[21] == ctx.gpr[4]; // nop if (branch_taken) { goto L_08880218; } goto L_088801A4; } L_088801A4: ctx.gpr[4] = (ctx.gpr[21] << 2u); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); 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<0u, 4u>(vfpu_value); } ctx.gpr[5] = (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[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[23] + 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[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[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); } { 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<2u, 3u>(vfpu_d); } ctx.gpr[7] = (ctx.gpr[29] + static_cast(128)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<2u, 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[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); } { 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[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[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); } { 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])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(128))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(132))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(136))); 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_08880218; L_08880218: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); goto L_0888021C; L_0888021C: ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0888023C; } goto L_08880228; } L_08880228: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0888023C; } goto L_08880234; } L_08880234: ctx.gpr[31] = (0x0888023Cu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); if (rt.invoke_chained_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem) && ctx.pc == 0x0888023Cu) goto L_0888023C; return; L_0888023C: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(232))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(236))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(240))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(244))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(248))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(252))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(256))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(260))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(264))); ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(268))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(272))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(288)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08880270: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[7]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[8]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[9]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[10]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[11]); 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_08880298: 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(0x3F22F983u); const float vfpu_value[4]{vfpu_constant, vfpu_constant, vfpu_constant, vfpu_constant}; ctx.write_vfpu_vector_with_destination_prefix_ct<32u, 1u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 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<64u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<64u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = std::sin(vfpu_s[i] * 1.57079632679489661923f); ctx.write_vfpu_vector_with_destination_prefix_ct<1u, 1u>(vfpu_d); } ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<1u>()); ctx.fpr[0] = std::bit_cast(ctx.gpr[4]); 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_088802BC: 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(0x3F22F983u); const float vfpu_value[4]{vfpu_constant, vfpu_constant, vfpu_constant, vfpu_constant}; ctx.write_vfpu_vector_with_destination_prefix_ct<32u, 1u>(vfpu_value); } { float vfpu_s[4]{}, vfpu_t[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<0u, 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<64u, 1u>(vfpu_d); } { float vfpu_s[4]{}, vfpu_d[4]{}; ctx.read_vfpu_vector_with_source_prefix_ct<64u, 1u, 0u>(vfpu_s); for (std::uint32_t i = 0; i < 1u; ++i) vfpu_d[i] = std::cos(vfpu_s[i] * 1.57079632679489661923f); ctx.write_vfpu_vector_with_destination_prefix_ct<1u, 1u>(vfpu_d); } ctx.gpr[4] = (ctx.vfpu_scalar_bits_ct<1u>()); ctx.fpr[0] = std::bit_cast(ctx.gpr[4]); 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_088802E0: ctx.gpr[6] = (2240u << 16u); ctx.gpr[4] = (2240u << 16u); ctx.gpr[7] = (0u | 0u); ctx.gpr[5] = (0u | 12u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-25008)); goto L_088802F8; L_088802F8: aot_mem.aot_store32(ctx.gpr[6] + static_cast(0), 0u); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(4), 0u); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), 0u); aot_mem.aot_store8(ctx.gpr[4] + static_cast(12), static_cast(0u)); ctx.gpr[7] = (ctx.gpr[7] + static_cast(1)); ctx.gpr[6] = (ctx.gpr[6] + static_cast(4)); ctx.gpr[8] = (static_cast(ctx.gpr[7]) < 32 ? 1u : 0u); { const bool branch_taken = ctx.gpr[8] != 0u; ctx.gpr[4] = (ctx.gpr[4] + static_cast(48)); if (branch_taken) { goto L_088802F8; } goto L_08880320; } L_08880320: 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_08880328: ctx.gpr[4] = (ctx.gpr[4] << 4u); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[2] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (2240u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-25008)); jump_target = ctx.gpr[31]; ctx.gpr[2] = (ctx.gpr[2] + ctx.gpr[4]); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08880344: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-336)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(296), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(300), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(304), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(308), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(312), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(316), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(320), ctx.gpr[31]); ctx.gpr[20] = (ctx.gpr[8] & 255u); ctx.fpr[13] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(128), 0u); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(136))); ctx.gpr[9] = (0u + static_cast(-2)); ctx.gpr[8] = (ctx.gpr[8] & ctx.gpr[9]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(136), ctx.gpr[8]); ctx.gpr[8] = (ctx.gpr[29] + static_cast(64)); ctx.gpr[19] = (0u | 0u); ctx.gpr[9] = (16192u << 16u); ctx.fpr[20] = std::bit_cast(ctx.gpr[9]); ctx.gpr[18] = (0u | 1u); { 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[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[7] = (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[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[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[9] = (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[9] + 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<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[9] + 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[29] + static_cast(48), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[13])); ctx.gpr[10] = (16256u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[10]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[13])); { 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<1u, 4u>(vfpu_value); } ctx.gpr[10] = (ctx.gpr[29] + static_cast(48)); { const std::uint32_t vfpu_address = ctx.gpr[10] + 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); { 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[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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[8] + 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<1u, 4u>(vfpu_value); } { 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<2u, 4u>(vfpu_value); } ctx.execute_vfpu_cross_quat(0u, 1u, 2u, 3u); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[10] + 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[10] + 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[7] = (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[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[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[29] + static_cast(112)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[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] = (0u | 18u); ctx.gpr[17] = (ctx.gpr[4] | 0u); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[6]; ctx.gpr[16] = (ctx.gpr[5] | 0u); if (branch_taken) { goto L_08880564; } goto L_0888043C; } L_0888043C: ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (16051u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 13107u); ctx.gpr[19] = (ctx.gpr[19] + static_cast(2000)); { const bool branch_taken = ctx.gpr[17] == 0u; ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); if (branch_taken) { goto L_08880500; } goto L_08880454; } L_08880454: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[17] + static_cast(86)))))); ctx.gpr[5] = (0u | 275u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088804D0; } goto L_08880464; } L_08880464: ctx.fpr[14] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[17] + static_cast(320)); { 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[17] + static_cast(16)); { 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[14] <= ctx.fpr[12])); // nop if (!ctx.fpu_condition()) { ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[14])); goto L_08880494; } goto L_08880494; L_08880494: ctx.fpr[13] = ctx.fpr[13] + ctx.fpr[12]; ctx.fpr[14] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[17] + static_cast(320)); { 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[17] + static_cast(32)); { 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[14])); // nop if (ctx.fpu_condition()) { ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[14])); goto L_088804C8; } goto L_088804C8; L_088804C8: { const bool branch_taken = 0u == 0u; ctx.fpr[13] = ctx.fpr[13] + ctx.fpr[12]; if (branch_taken) { goto L_08880500; } goto L_088804D0; } L_088804D0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(72))); ctx.gpr[5] = (0u | 6u); ctx.gpr[4] = (ctx.gpr[4] & 14u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; ctx.gpr[4] = (16051u << 16u); if (branch_taken) { goto L_08880500; } goto L_088804E4; } L_088804E4: ctx.gpr[4] = (ctx.gpr[4] | 13107u); 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[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } ctx.gpr[4] = (15897u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 39322u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); ctx.fpr[13] = ctx.fpr[13] + ctx.fpr[14]; goto L_08880500; L_08880500: ctx.fpr[12] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(176), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(180), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(184), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(64)); { 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); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(176)); { 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(160)); { 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.gpr[5] = (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[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])); } ctx.gpr[5] = (ctx.gpr[29] + static_cast(80)); { 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_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); } { 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[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])); } ctx.gpr[18] = (0u | 0u); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880570; } goto L_08880564; } L_08880564: ctx.gpr[4] = (2232u << 16u); ctx.gpr[31] = (0x08880570u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-23904)); goto L_08880270; L_08880570: ctx.gpr[2] = (0u + static_cast(-1)); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[6] = (ctx.gpr[29] + static_cast(64)); ctx.gpr[7] = (ctx.gpr[29] + static_cast(144)); ctx.gpr[10] = (0u | 0u); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[17] | 0u); ctx.gpr[8] = (ctx.gpr[18] | 0u); ctx.gpr[9] = (ctx.gpr[19] | 0u); ctx.gpr[11] = (ctx.gpr[20] | 0u); ctx.gpr[31] = (0x088805A4u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[2]); goto L_08881838; L_088805A4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(136))); ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[17] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_088805C8; } goto L_088805B4; } L_088805B4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(128))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088805C8; } goto L_088805C0; } L_088805C0: ctx.gpr[31] = (0x088805C8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(128))); if (rt.invoke_chained_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem) && ctx.pc == 0x088805C8u) goto L_088805C8; return; L_088805C8: ctx.gpr[2] = (ctx.gpr[17] | 0u); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(296))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(300))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(304))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(308))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(312))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(316))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(320))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(336)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_088805F0: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[7] = (ctx.gpr[4] << 4u); ctx.gpr[6] = (ctx.gpr[5] & 255u); ctx.gpr[5] = (ctx.gpr[7] + ctx.gpr[7]); ctx.gpr[5] = (ctx.gpr[7] + ctx.gpr[5]); ctx.gpr[8] = (2240u << 16u); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[7] = (2240u << 16u); ctx.gpr[8] = (ctx.gpr[8] + static_cast(-25136)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[7] = (ctx.gpr[7] + static_cast(-25008)); ctx.gpr[16] = (ctx.gpr[4] + ctx.gpr[8]); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[7]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08880630u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); goto L_08881DFC; L_08880630: aot_mem.aot_store32(ctx.gpr[16] + static_cast(0), 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_08880644: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[7] = (0u | 12u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[7]; // nop if (branch_taken) { goto L_08880684; } goto L_08880658; } L_08880658: ctx.gpr[7] = (ctx.gpr[6] | 0u); ctx.gpr[5] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x0888067Cu); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x0888067Cu) goto L_0888067C; return; L_0888067C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088806EC; } goto L_08880684; } L_08880684: ctx.gpr[7] = (0u | 17u); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[7]; // nop if (branch_taken) { goto L_088806BC; } goto L_08880690; } L_08880690: ctx.gpr[7] = (ctx.gpr[6] | 0u); ctx.gpr[5] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x088806B4u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x088806B4u) goto L_088806B4; return; L_088806B4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088806EC; } goto L_088806BC; } L_088806BC: ctx.gpr[7] = (0u | 18u); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[7]; // nop if (branch_taken) { goto L_088806EC; } goto L_088806C8; } L_088806C8: ctx.gpr[7] = (ctx.gpr[6] | 0u); ctx.gpr[5] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 2u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x088806ECu); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x088806ECu) goto L_088806EC; return; L_088806EC: 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_088806F8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[20]); ctx.gpr[20] = (2240u << 16u); ctx.gpr[19] = (2240u << 16u); 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(20), ctx.gpr[21]); ctx.gpr[21] = (0u | 0u); ctx.gpr[18] = (0u | 13u); ctx.gpr[17] = (0u + static_cast(-1)); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[20] = (ctx.gpr[20] + static_cast(-25008)); ctx.gpr[19] = (ctx.gpr[19] + static_cast(-25136)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[31]); goto L_08880738; L_08880738: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[20] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08880770; } goto L_08880744; } L_08880744: ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[18]; ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[19] + static_cast(0))); if (branch_taken) { goto L_08880770; } goto L_08880754; } L_08880754: { const bool branch_taken = ctx.gpr[16] == ctx.gpr[17]; // nop if (branch_taken) { goto L_08880768; } goto L_0888075C; } L_0888075C: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(36))); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[16]; // nop if (branch_taken) { goto L_08880770; } goto L_08880768; } L_08880768: ctx.gpr[31] = (0x08880770u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_08880770: ctx.gpr[21] = (ctx.gpr[21] + static_cast(1)); ctx.gpr[20] = (ctx.gpr[20] + static_cast(48)); ctx.gpr[4] = (static_cast(ctx.gpr[21]) < 32 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[19] = (ctx.gpr[19] + static_cast(4)); if (branch_taken) { goto L_08880738; } goto L_08880784; } L_08880784: 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[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); 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_088807A8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[4] = (2240u << 16u); 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]); ctx.gpr[16] = (0u | 0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-25008)); ctx.gpr[17] = (2240u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); ctx.gpr[18] = (0u | 0u); ctx.gpr[16] = (ctx.gpr[16] + ctx.gpr[4]); ctx.gpr[17] = (ctx.gpr[17] + static_cast(-25136)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[31]); goto L_088807D8; L_088807D8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(12))); { const bool branch_taken = ctx.gpr[6] == 0u; ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(0))); if (branch_taken) { goto L_088807F0; } goto L_088807E8; } L_088807E8: ctx.gpr[31] = (0x088807F0u); ctx.gpr[6] = (0u | 0u); goto L_08881DFC; L_088807F0: ctx.gpr[18] = (ctx.gpr[18] + static_cast(1)); ctx.gpr[17] = (ctx.gpr[17] + static_cast(4)); ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 32 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[16] = (ctx.gpr[16] + static_cast(48)); if (branch_taken) { goto L_088807D8; } goto L_08880804; } L_08880804: 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_0888081C: 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] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] & 255u); ctx.gpr[16] = (ctx.gpr[16] + static_cast(-25136)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[6] = (0u | 0u); goto L_08880838; L_08880838: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); if (ctx.gpr[7] == ctx.gpr[4]) { ctx.gpr[4] = (ctx.gpr[6] << 4u); goto L_0888085C; } goto L_08880844; L_08880844: ctx.gpr[6] = (ctx.gpr[6] + static_cast(1)); ctx.gpr[7] = (static_cast(ctx.gpr[6]) < 32 ? 1u : 0u); { const bool branch_taken = ctx.gpr[7] != 0u; ctx.gpr[16] = (ctx.gpr[16] + static_cast(4)); if (branch_taken) { goto L_08880838; } goto L_08880854; } L_08880854: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880888; } goto L_0888085C; } L_0888085C: ctx.gpr[6] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25008)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[31] = (0x0888087Cu); ctx.gpr[5] = (ctx.gpr[7] | 0u); goto L_08881DFC; L_0888087C: aot_mem.aot_store32(ctx.gpr[16] + static_cast(0), 0u); { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 1u); if (branch_taken) { goto L_0888088C; } goto L_08880888; } L_08880888: ctx.gpr[2] = (0u | 0u); goto L_0888088C; L_0888088C: 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_0888089C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); 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]); ctx.gpr[18] = (2240u << 16u); ctx.gpr[17] = (2240u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[18] = (ctx.gpr[18] + static_cast(-25136)); ctx.gpr[17] = (ctx.gpr[17] + static_cast(-25008)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[31]); ctx.gpr[4] = (0u | 0u); ctx.gpr[19] = (0u | 0u); ctx.gpr[17] = (ctx.gpr[4] + ctx.gpr[17]); goto L_088808D4; L_088808D4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (ctx.gpr[17] | 0u); if (branch_taken) { goto L_08880908; } goto L_088808E0; } L_088808E0: { const bool branch_taken = ctx.gpr[17] == 0u; // nop if (branch_taken) { goto L_08880908; } goto L_088808E8; } L_088808E8: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(12))); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08880908; } goto L_088808F4; } L_088808F4: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[16]; // nop if (branch_taken) { goto L_08880908; } goto L_08880900; } L_08880900: ctx.gpr[31] = (0x08880908u); ctx.gpr[6] = (0u | 0u); goto L_08881DFC; L_08880908: ctx.gpr[19] = (ctx.gpr[19] + static_cast(1)); ctx.gpr[18] = (ctx.gpr[18] + static_cast(4)); ctx.gpr[4] = (static_cast(ctx.gpr[19]) < 32 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (ctx.gpr[17] + static_cast(48)); if (branch_taken) { goto L_088808D4; } goto L_0888091C; } L_0888091C: 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_08880938: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); ctx.gpr[7] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(104))); ctx.gpr[4] = (ctx.gpr[5] | 0u); ctx.gpr[6] = (ctx.gpr[4] + static_cast(4)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(0))); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_0888098C; } goto L_08880958; } L_08880958: aot_mem.aot_store8(ctx.gpr[29] + static_cast(16), static_cast(0u)); ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(16))); goto L_08880960; L_08880960: ctx.gpr[8] = (ctx.gpr[8] < ctx.gpr[7] ? 1u : 0u); ctx.gpr[8] = (ctx.gpr[8] & 255u); if (ctx.gpr[8] != 0u) { ctx.gpr[6] = (ctx.gpr[6] + static_cast(12)); goto L_08880980; } goto L_08880970; L_08880970: ctx.gpr[4] = (ctx.gpr[6] | 0u); ctx.gpr[6] = (ctx.gpr[4] + static_cast(8)); { const bool branch_taken = 0u == 0u; ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(0))); if (branch_taken) { goto L_08880984; } goto L_08880980; } L_08880980: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(0))); goto L_08880984; L_08880984: if (ctx.gpr[6] != 0u) { ctx.gpr[8] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(16))); goto L_08880960; } goto L_0888098C; L_0888098C: if (ctx.gpr[4] == ctx.gpr[5]) { ctx.gpr[4] = (ctx.gpr[5] | 0u); goto L_088809B0; } goto L_08880994; L_08880994: aot_mem.aot_store8(ctx.gpr[29] + static_cast(17), static_cast(0u)); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(16))); ctx.gpr[6] = (ctx.gpr[7] < ctx.gpr[6] ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[6] & 255u); if (ctx.gpr[6] == 0u) { aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[4]); goto L_088809B4; } goto L_088809AC; L_088809AC: ctx.gpr[4] = (ctx.gpr[5] | 0u); goto L_088809B0; L_088809B0: aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[4]); goto L_088809B4; L_088809B4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[5] ^ ctx.gpr[4]); 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_088809EC; } goto L_088809E4; } L_088809E4: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_088809F0; } goto L_088809EC; } L_088809EC: ctx.gpr[2] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(20))); goto L_088809F0; L_088809F0: 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_088809F8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-496)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(436), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(440), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(444), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(448), std::bit_cast(ctx.fpr[26])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(452), std::bit_cast(ctx.fpr[28])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(456), std::bit_cast(ctx.fpr[30])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(460), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(464), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(468), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(472), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(476), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(480), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(484), ctx.gpr[31]); ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.gpr[7] = (ctx.gpr[7] & 255u); ctx.gpr[16] = (ctx.gpr[6] | 0u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(428), static_cast(ctx.gpr[7])); ctx.fpr[28] = std::bit_cast(0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[28])); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(96), 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); ctx.gpr[7] = (0u + static_cast(-2)); ctx.gpr[6] = (ctx.gpr[6] & ctx.gpr[7]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(104), ctx.gpr[6]); ctx.gpr[20] = (0u | 0u); ctx.gpr[6] = (16192u << 16u); ctx.fpr[26] = std::bit_cast(ctx.gpr[6]); ctx.gpr[17] = (0u | 1u); ctx.gpr[19] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[5] + static_cast(-12)); ctx.gpr[6] = (ctx.gpr[6] < static_cast(7) ? 1u : 0u); ctx.gpr[18] = (ctx.gpr[4] | 0u); ctx.gpr[21] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(408), ctx.gpr[18]); { const bool branch_taken = ctx.gpr[6] == 0u; aot_mem.aot_store32(ctx.gpr[29] + static_cast(424), ctx.gpr[21]); if (branch_taken) { goto L_088815C4; } goto L_08880A90; } L_08880A90: ctx.gpr[4] = (ctx.gpr[21] + static_cast(-12)); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + ctx.gpr[4]); ctx.gpr[1] = (aot_mem.aot_load32(ctx.gpr[1] + static_cast(-23840))); jump_target = ctx.gpr[1]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08880AAC: ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[20] = (ctx.gpr[20] + static_cast(20000)); ctx.fpr[24] = std::bit_cast(0u); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[24])); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[20]) || std::isnan(ctx.fpr[22])) && ctx.fpr[20] == ctx.fpr[22])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08880AD4; } goto L_08880ACC; } L_08880ACC: { const bool branch_taken = 0u == 0u; ctx.fpr[26] = std::bit_cast(0u); if (branch_taken) { goto L_08880AF4; } goto L_08880AD4; } L_08880AD4: ctx.gpr[4] = (15969u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 18350u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; const float ft = ctx.fpr[12]; 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] = (15897u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 39322u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[26] = ctx.fpr[26] + ctx.fpr[13]; goto L_08880AF4; L_08880AF4: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08880BC4; } goto L_08880AFC; } L_08880AFC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 6u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880B60; } goto L_08880B10; } L_08880B10: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880B48; } goto L_08880B2C; } L_08880B2C: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880B4C; } goto L_08880B40; L_08880B40: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880B58; } goto L_08880B48; } L_08880B48: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880B4C; L_08880B4C: ctx.gpr[31] = (0x08880B54u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880B54u) goto L_08880B54; return; L_08880B54: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880B58; L_08880B58: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880BC8; } goto L_08880B60; } L_08880B60: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 14u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880BC8; } goto L_08880B74; } L_08880B74: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880BAC; } goto L_08880B90; } L_08880B90: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880BB0; } goto L_08880BA4; L_08880BA4: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880BBC; } goto L_08880BAC; } L_08880BAC: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880BB0; L_08880BB0: ctx.gpr[31] = (0x08880BB8u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880BB8u) goto L_08880BB8; return; L_08880BB8: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880BBC; L_08880BBC: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880BC8; } goto L_08880BC4; } L_08880BC4: ctx.fpr[28] = std::bit_cast(0u); goto L_08880BC8; L_08880BC8: ctx.gpr[18] = (ctx.gpr[29] + static_cast(32)); ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[24])); ctx.gpr[31] = (0x08880BE0u); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08880BE0u) goto L_08880BE0; return; L_08880BE0: ctx.gpr[4] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08880BECu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem) && ctx.pc == 0x08880BECu) goto L_08880BEC; return; L_08880BEC: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08880C00u); ctx.gpr[4] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08880C00u) goto L_08880C00; return; L_08880C00: ctx.gpr[31] = (0x08880C08u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_08880298; L_08880C08: { const float fs = ctx.fpr[26]; 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[22] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.gpr[31] = (0x08880C18u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_088802BC; L_08880C18: { const float fs = ctx.fpr[26]; const float ft = ctx.fpr[0]; 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.gpr[4] = (16076u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } ctx.fpr[12] = ctx.fpr[15] + ctx.fpr[14]; { const float fs = ctx.fpr[12]; 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[29] + static_cast(128), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(132), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(136), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(128)); { 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(112)); { 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[19] = (0u | 5u); ctx.gpr[4] = (16128u << 16u); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088815D4; } goto L_08880C64; } L_08880C64: ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[20] = (ctx.gpr[20] + static_cast(2100)); ctx.fpr[26] = std::bit_cast(0u); ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[20]) || std::isnan(ctx.fpr[24])) && ctx.fpr[20] == ctx.fpr[24])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08880C8C; } goto L_08880C84; } L_08880C84: { const bool branch_taken = 0u == 0u; ctx.fpr[22] = std::bit_cast(0u); if (branch_taken) { goto L_08880CAC; } goto L_08880C8C; } L_08880C8C: ctx.gpr[4] = (15969u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 18350u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; const float ft = ctx.fpr[12]; 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; } ctx.gpr[4] = (15897u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 39322u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[22] = ctx.fpr[22] + ctx.fpr[13]; goto L_08880CAC; L_08880CAC: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08880D7C; } goto L_08880CB4; } L_08880CB4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 6u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880D18; } goto L_08880CC8; } L_08880CC8: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880D00; } goto L_08880CE4; } L_08880CE4: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880D04; } goto L_08880CF8; L_08880CF8: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880D10; } goto L_08880D00; } L_08880D00: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880D04; L_08880D04: ctx.gpr[31] = (0x08880D0Cu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880D0Cu) goto L_08880D0C; return; L_08880D0C: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880D10; L_08880D10: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880D80; } goto L_08880D18; } L_08880D18: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 14u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880D80; } goto L_08880D2C; } L_08880D2C: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880D64; } goto L_08880D48; } L_08880D48: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880D68; } goto L_08880D5C; L_08880D5C: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880D74; } goto L_08880D64; } L_08880D64: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880D68; L_08880D68: ctx.gpr[31] = (0x08880D70u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880D70u) goto L_08880D70; return; L_08880D70: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880D74; L_08880D74: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880D80; } goto L_08880D7C; } L_08880D7C: ctx.fpr[28] = std::bit_cast(0u); goto L_08880D80; L_08880D80: ctx.gpr[19] = (ctx.gpr[29] + static_cast(32)); ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.gpr[31] = (0x08880D98u); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[24])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08880D98u) goto L_08880D98; return; L_08880D98: ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[31] = (0x08880DA4u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem) && ctx.pc == 0x08880DA4u) goto L_08880DA4; return; L_08880DA4: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08880DB8u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08880DB8u) goto L_08880DB8; return; L_08880DB8: ctx.gpr[31] = (0x08880DC0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_08880298; L_08880DC0: { const float fs = ctx.fpr[22]; 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[24] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.gpr[31] = (0x08880DD0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_088802BC; L_08880DD0: { const float fs = ctx.fpr[22]; const float ft = ctx.fpr[0]; 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.gpr[4] = (16076u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } ctx.fpr[12] = ctx.fpr[15] + ctx.fpr[14]; { 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[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(128), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(132), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(136), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(128)); { 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(112)); { 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 bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08880E38; } goto L_08880E10; } L_08880E10: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + 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_08880E38; } goto L_08880E2C; } L_08880E2C: ctx.gpr[4] = (ctx.gpr[29] + static_cast(112)); ctx.gpr[31] = (0x08880E38u); ctx.gpr[5] = (ctx.gpr[18] + static_cast(320)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 463u, 0x08A931B8u>(ctx, &aot_mem) && ctx.pc == 0x08880E38u) goto L_08880E38; return; L_08880E38: ctx.gpr[19] = (0u | 5u); ctx.gpr[4] = (16128u << 16u); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088815D4; } goto L_08880E4C; } L_08880E4C: ctx.gpr[20] = (0u | 0u); ctx.fpr[26] = std::bit_cast(0u); ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[20])); { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08880F98; } goto L_08880E64; } L_08880E64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 6u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880EC8; } goto L_08880E78; } L_08880E78: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880EB0; } goto L_08880E94; } L_08880E94: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880EB4; } goto L_08880EA8; L_08880EA8: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880EC0; } goto L_08880EB0; } L_08880EB0: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880EB4; L_08880EB4: ctx.gpr[31] = (0x08880EBCu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880EBCu) goto L_08880EBC; return; L_08880EBC: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880EC0; L_08880EC0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880F9C; } goto L_08880EC8; } L_08880EC8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 14u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08880F2C; } goto L_08880EDC; } L_08880EDC: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880F14; } goto L_08880EF8; } L_08880EF8: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880F18; } goto L_08880F0C; L_08880F0C: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880F24; } goto L_08880F14; } L_08880F14: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880F18; L_08880F18: ctx.gpr[31] = (0x08880F20u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880F20u) goto L_08880F20; return; L_08880F20: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880F24; L_08880F24: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880F9C; } goto L_08880F2C; } L_08880F2C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 4u); 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_08880F9C; } goto L_08880F48; } L_08880F48: ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[28]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[28]) || std::isnan(ctx.fpr[13])) && ctx.fpr[28] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_08880F80; } goto L_08880F64; } L_08880F64: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880F84; } goto L_08880F78; L_08880F78: { const bool branch_taken = 0u == 0u; ctx.fpr[28] = std::bit_cast(0u); if (branch_taken) { goto L_08880F90; } goto L_08880F80; } L_08880F80: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08880F84; L_08880F84: ctx.gpr[31] = (0x08880F8Cu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08880F8Cu) goto L_08880F8C; return; L_08880F8C: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08880F90; L_08880F90: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08880F9C; } goto L_08880F98; } L_08880F98: ctx.fpr[28] = std::bit_cast(0u); goto L_08880F9C; L_08880F9C: ctx.gpr[19] = (ctx.gpr[29] + static_cast(32)); ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.gpr[31] = (0x08880FB4u); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[24])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08880FB4u) goto L_08880FB4; return; L_08880FB4: ctx.gpr[4] = (ctx.gpr[19] | 0u); ctx.gpr[31] = (0x08880FC0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem) && ctx.pc == 0x08880FC0u) goto L_08880FC0; return; L_08880FC0: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08880FD4u); ctx.gpr[4] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08880FD4u) goto L_08880FD4; return; L_08880FD4: ctx.gpr[4] = (0u | 15u); { const bool branch_taken = ctx.gpr[21] != ctx.gpr[4]; // nop if (branch_taken) { goto L_08881020; } goto L_08880FE0; } L_08880FE0: ctx.gpr[31] = (0x08880FE8u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_08880298; L_08880FE8: { const float fs = ctx.fpr[22]; const float ft = ctx.fpr[0]; 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[31] = (0x08880FF4u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_088802BC; L_08880FF4: { const float fs = ctx.fpr[22]; 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] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(176), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(180), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(184), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(176)); { 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(112)); { 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 bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881070; } goto L_08881020; } L_08881020: ctx.gpr[31] = (0x08881028u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_08880298; L_08881028: { const float fs = ctx.fpr[22]; 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[24] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.gpr[31] = (0x08881038u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[28])); goto L_088802BC; L_08881038: { const float fs = ctx.fpr[22]; const float ft = ctx.fpr[0]; 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.gpr[4] = (16076u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } ctx.fpr[12] = ctx.fpr[15] + ctx.fpr[14]; { 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[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(192), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(196), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(200), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(192)); { 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(112)); { 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])); } goto L_08881070; L_08881070: ctx.gpr[19] = (0u | 5u); ctx.fpr[26] = std::bit_cast(0u); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088815D4; } goto L_08881080; } L_08881080: ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[20] = (ctx.gpr[20] + static_cast(2000)); ctx.fpr[30] = std::bit_cast(0u); ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[30])); ctx.gpr[4] = (15969u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 18350u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; const float ft = ctx.fpr[12]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } ctx.gpr[4] = (15897u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 39322u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[24] = ctx.fpr[24] + ctx.fpr[13]; ctx.gpr[4] = (15979u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 34079u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[24])); // nop if (!ctx.fpu_condition()) { ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_088810CC; } goto L_088810CC; L_088810CC: { const bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_08881124; } goto L_088810D4; } L_088810D4: ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[22]) || std::isnan(ctx.fpr[13])) && ctx.fpr[22] == ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_0888110C; } goto L_088810F0; } L_088810F0: ctx.fpr[13] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop if (!ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08881110; } goto L_08881104; L_08881104: { const bool branch_taken = 0u == 0u; ctx.fpr[22] = std::bit_cast(0u); if (branch_taken) { goto L_0888111C; } goto L_0888110C; } L_0888110C: ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_08881110; L_08881110: ctx.gpr[31] = (0x08881118u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08881118u) goto L_08881118; return; L_08881118: ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_0888111C; L_0888111C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881128; } goto L_08881124; } L_08881124: ctx.fpr[22] = std::bit_cast(0u); goto L_08881128; L_08881128: ctx.gpr[21] = (ctx.gpr[29] + static_cast(32)); ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[21] | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[30])); ctx.gpr[31] = (0x08881140u); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[28])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08881140u) goto L_08881140; return; L_08881140: ctx.gpr[4] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x0888114Cu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem) && ctx.pc == 0x0888114Cu) goto L_0888114C; return; L_0888114C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08881160u); ctx.gpr[4] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08881160u) goto L_08881160; return; L_08881160: ctx.gpr[31] = (0x08881168u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); goto L_08880298; L_08881168: { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[12] = std::bit_cast(0x7FC00000u); else ctx.fpr[12] = fs * ft; } ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.gpr[31] = (0x08881178u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); goto L_088802BC; L_08881178: { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[0]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[13] = std::bit_cast(0x7FC00000u); else ctx.fpr[13] = fs * ft; } ctx.gpr[4] = (15948u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[14] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } ctx.gpr[4] = (16076u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[14] + ctx.fpr[12]; { 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; } aot_mem.aot_store32(ctx.gpr[29] + static_cast(128), std::bit_cast(ctx.fpr[28])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(132), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(136), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(128)); { 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(112)); { 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 bool branch_taken = ctx.gpr[18] == 0u; // nop if (branch_taken) { goto L_088811EC; } goto L_088811C4; } L_088811C4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + 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_088811EC; } goto L_088811E0; } L_088811E0: ctx.gpr[4] = (ctx.gpr[29] + static_cast(112)); ctx.gpr[31] = (0x088811ECu); ctx.gpr[5] = (ctx.gpr[18] + static_cast(320)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 463u, 0x08A931B8u>(ctx, &aot_mem) && ctx.pc == 0x088811ECu) goto L_088811EC; return; L_088811EC: { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088815D4; } goto L_088811F4; } L_088811F4: ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[20] = (ctx.gpr[20] + static_cast(2000)); ctx.gpr[4] = (16051u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 13107u); ctx.fpr[24] = std::bit_cast(ctx.gpr[4]); if (ctx.gpr[18] == 0u) { ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_0888152C; } goto L_08881210; L_08881210: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[18] + static_cast(86)))))); ctx.gpr[5] = (0u | 275u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088812B4; } goto L_08881220; } L_08881220: ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[31] = (0x0888122Cu); ctx.gpr[5] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 7u, 0x08860358u>(ctx, &aot_mem) && ctx.pc == 0x0888122Cu) goto L_0888122C; return; L_0888122C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), std::bit_cast(ctx.fpr[12])); ctx.fpr[13] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[18] + static_cast(320)); { 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[18] + static_cast(16)); { 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[13] <= ctx.fpr[12])); // nop if (!ctx.fpu_condition()) { ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[13])); goto L_08881274; } goto L_08881274; L_08881274: ctx.fpr[24] = ctx.fpr[24] + ctx.fpr[12]; ctx.fpr[12] = std::bit_cast(0u); ctx.gpr[4] = (ctx.gpr[18] + static_cast(320)); { 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[18] + static_cast(32)); { 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[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[12])); // nop if (ctx.fpu_condition()) { ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[12])); goto L_088812A8; } goto L_088812A8; L_088812A8: ctx.fpr[24] = ctx.fpr[24] + ctx.fpr[13]; { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881560; } goto L_088812B4; } L_088812B4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 6u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088813FC; } goto L_088812C8; } L_088812C8: ctx.gpr[31] = (0x088812D0u); ctx.gpr[4] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x088812D0u) goto L_088812D0; return; L_088812D0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088813FC; } goto L_088812D8; } L_088812D8: ctx.gpr[4] = (2236u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(32304)); ctx.gpr[17] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(80))); 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_0888134C; } goto L_088812F0; } L_088812F0: ctx.gpr[31] = (0x088812F8u); // nop if (rt.invoke_chained_direct<&recomp_unit_0087_entry, 87u, 47u, 0x08960424u>(ctx, &aot_mem) && ctx.pc == 0x088812F8u) goto L_088812F8; return; L_088812F8: ctx.gpr[4] = (ctx.gpr[2] + static_cast(16)); { 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[5] = (ctx.gpr[29] + static_cast(240)); { 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<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[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])); } ctx.gpr[4] = (48768u << 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<1u>(ctx.gpr[4]); { 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_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[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])); } ctx.gpr[31] = (0x0888134Cu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 463u, 0x08A931B8u>(ctx, &aot_mem) && ctx.pc == 0x0888134Cu) goto L_0888134C; return; L_0888134C: ctx.gpr[4] = (ctx.gpr[17] << 5u); ctx.gpr[5] = (0u - ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[5] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[4] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[5] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(32304)); ctx.gpr[6] = (ctx.gpr[4] + ctx.gpr[5]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(128))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(208))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(64), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(132))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(212))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(68), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(136))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[6] + static_cast(216))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(72), std::bit_cast(ctx.fpr[12])); ctx.gpr[6] = (ctx.gpr[5] + static_cast(208)); ctx.gpr[6] = (ctx.gpr[4] + ctx.gpr[6]); ctx.gpr[5] = (ctx.gpr[5] + static_cast(128)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); { 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); } { 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<2u, 4u>(vfpu_value); } ctx.execute_vfpu_cross_quat(0u, 1u, 2u, 3u); ctx.gpr[4] = (ctx.gpr[29] + static_cast(224)); { 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[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(224))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(228))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(232))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), std::bit_cast(ctx.fpr[12])); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881560; } goto L_088813FC; } L_088813FC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[5] = (0u | 6u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08881518; } goto L_08881410; } L_08881410: ctx.gpr[31] = (0x08881418u); ctx.gpr[4] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 3u, 0x08910020u>(ctx, &aot_mem) && ctx.pc == 0x08881418u) goto L_08881418; return; L_08881418: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08881518; } goto L_08881420; } L_08881420: ctx.fpr[24] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[31] = (0x0888142Cu); ctx.gpr[4] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 3u, 0x08910020u>(ctx, &aot_mem) && ctx.pc == 0x0888142Cu) goto L_0888142C; return; L_0888142C: ctx.gpr[4] = (ctx.gpr[2] + 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(256)); { 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[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(264))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.fpr[13] = ctx.fpr[13] - ctx.fpr[12]; ctx.fpr[30] = std::bit_cast(0u); ctx.gpr[31] = (0x08881454u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[30])); if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x08881454u) goto L_08881454; return; L_08881454: ctx.fpr[28] = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.gpr[4] = (16256u << 16u); ctx.fpr[20] = std::bit_cast(ctx.gpr[4]); ctx.fpr[22] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[4] = (16051u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 13107u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[24]; const float ft = ctx.fpr[12]; if ((std::isinf(fs) && ft == 0.0f) || (std::isinf(ft) && fs == 0.0f)) ctx.fpr[24] = std::bit_cast(0x7FC00000u); else ctx.fpr[24] = fs * ft; } ctx.gpr[4] = (15897u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 39322u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.fpr[24] = ctx.fpr[24] + ctx.fpr[13]; ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[12]) ^ 0x80000000u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[30])) && ctx.fpr[12] == ctx.fpr[30])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); if (branch_taken) { goto L_088814B8; } goto L_0888149C; } L_0888149C: ctx.fpr[14] = std::bit_cast(0u); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[13]) || std::isnan(ctx.fpr[14])) && ctx.fpr[13] == ctx.fpr[14])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_088814B8; } goto L_088814B0; } L_088814B0: { const bool branch_taken = 0u == 0u; ctx.fpr[12] = std::bit_cast(0u); if (branch_taken) { goto L_088814C4; } goto L_088814B8; } L_088814B8: ctx.gpr[31] = (0x088814C0u); // nop if (rt.invoke_chained_direct<&recomp_unit_0088_entry, 88u, 28u, 0x08964540u>(ctx, &aot_mem) && ctx.pc == 0x088814C0u) goto L_088814C0; return; L_088814C0: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_088814C4; L_088814C4: aot_mem.aot_store32(ctx.gpr[29] + static_cast(432), std::bit_cast(ctx.fpr[26])); ctx.fpr[30] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.gpr[17] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.fpr[26] = std::bit_cast(0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[20])); ctx.gpr[31] = (0x088814E8u); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x088814E8u) goto L_088814E8; return; L_088814E8: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[26])); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[28])); ctx.gpr[31] = (0x088814FCu); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[30])); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 5u, 0x088600C4u>(ctx, &aot_mem) && ctx.pc == 0x088814FCu) goto L_088814FC; return; L_088814FC: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08881510u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08881510u) goto L_08881510; return; L_08881510: { const bool branch_taken = 0u == 0u; ctx.fpr[26] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(432))); if (branch_taken) { goto L_08881560; } goto L_08881518; } L_08881518: ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[31] = (0x08881524u); ctx.gpr[5] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 7u, 0x08860358u>(ctx, &aot_mem) && ctx.pc == 0x08881524u) goto L_08881524; return; L_08881524: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881560; } goto L_0888152C; } L_0888152C: ctx.fpr[20] = std::bit_cast(0u); ctx.gpr[17] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x08881540u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 943u, 0x0885FFE4u>(ctx, &aot_mem) && ctx.pc == 0x08881540u) goto L_08881540; return; L_08881540: ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[31] = (0x0888154Cu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0022_entry, 22u, 926u, 0x0885FD1Cu>(ctx, &aot_mem) && ctx.pc == 0x0888154Cu) goto L_0888154C; return; L_0888154C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[31] = (0x08881560u); ctx.gpr[4] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 4u, 0x08860094u>(ctx, &aot_mem) && ctx.pc == 0x08881560u) goto L_08881560; return; L_08881560: ctx.fpr[12] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(160), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(168), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); { 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); } ctx.gpr[4] = (ctx.gpr[29] + static_cast(160)); { 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(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.gpr[5] = (ctx.gpr[29] + static_cast(112)); { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[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])); } ctx.gpr[5] = (ctx.gpr[29] + 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); } { 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); } { 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[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])); } ctx.gpr[17] = (0u | 0u); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088815D4; } goto L_088815C4; } L_088815C4: ctx.gpr[4] = (2232u << 16u); ctx.gpr[31] = (0x088815D0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-23904)); goto L_08880270; L_088815D0: aot_mem.aot_store8(ctx.gpr[29] + static_cast(420), static_cast(ctx.gpr[17])); goto L_088815D4; L_088815D4: aot_mem.aot_store32(ctx.gpr[29] + static_cast(416), ctx.gpr[20]); aot_mem.aot_store8(ctx.gpr[29] + static_cast(412), static_cast(ctx.gpr[19])); ctx.gpr[4] = (0u + static_cast(-1)); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(-7080))); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[2] = (ctx.gpr[4] | 0u); if (branch_taken) { goto L_088817A4; } goto L_088815EC; } L_088815EC: ctx.gpr[4] = (0u | 76u); aot_mem.aot_store16(ctx.gpr[29] + static_cast(272), static_cast(ctx.gpr[4])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(8064))); aot_mem.aot_store8(ctx.gpr[29] + static_cast(274), static_cast(ctx.gpr[4])); ctx.gpr[16] = (ctx.gpr[29] + static_cast(272)); ctx.gpr[4] = (ctx.gpr[29] + static_cast(276)); ctx.gpr[5] = (ctx.gpr[4] + static_cast(4)); ctx.gpr[6] = (ctx.gpr[4] + static_cast(8)); ctx.gpr[7] = (ctx.gpr[29] + static_cast(288)); ctx.gpr[8] = (ctx.gpr[7] + static_cast(4)); ctx.gpr[9] = (ctx.gpr[7] + static_cast(8)); ctx.gpr[10] = (ctx.gpr[29] + static_cast(300)); ctx.gpr[11] = (ctx.gpr[10] + static_cast(4)); ctx.gpr[2] = (ctx.gpr[10] + static_cast(8)); ctx.gpr[3] = (ctx.gpr[29] + static_cast(312)); ctx.gpr[12] = (ctx.gpr[3] + static_cast(4)); ctx.gpr[13] = (ctx.gpr[3] + static_cast(8)); ctx.gpr[14] = (ctx.gpr[29] + static_cast(324)); ctx.gpr[15] = (ctx.gpr[14] + static_cast(4)); ctx.gpr[24] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(424))); ctx.gpr[25] = (ctx.gpr[14] + static_cast(8)); aot_mem.aot_store8(ctx.gpr[29] + static_cast(275), static_cast(ctx.gpr[24])); ctx.gpr[24] = (ctx.gpr[29] + static_cast(48)); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[24] + static_cast(0))); ctx.gpr[31] = (std::bit_cast(ctx.fpr[12])); rt.memory().aot_store_word_left(ctx.gpr[4] + static_cast(3), ctx.gpr[31]); rt.memory().aot_store_word_right(ctx.gpr[4] + static_cast(0), ctx.gpr[31]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[24] + static_cast(4))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[13])); rt.memory().aot_store_word_left(ctx.gpr[5] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[5] + static_cast(0), ctx.gpr[4]); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[24] + static_cast(8))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[14])); rt.memory().aot_store_word_left(ctx.gpr[6] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[6] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[15])); rt.memory().aot_store_word_left(ctx.gpr[7] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[7] + static_cast(0), ctx.gpr[5]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[12])); rt.memory().aot_store_word_left(ctx.gpr[8] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[8] + static_cast(0), ctx.gpr[5]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[13])); rt.memory().aot_store_word_left(ctx.gpr[9] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[9] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[29] + static_cast(64)); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[14])); rt.memory().aot_store_word_left(ctx.gpr[10] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[10] + static_cast(0), ctx.gpr[5]); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[15])); rt.memory().aot_store_word_left(ctx.gpr[11] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[11] + static_cast(0), ctx.gpr[5]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); rt.memory().aot_store_word_left(ctx.gpr[2] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[2] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[29] + static_cast(80)); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[13])); rt.memory().aot_store_word_left(ctx.gpr[3] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[3] + static_cast(0), ctx.gpr[5]); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[5] = (std::bit_cast(ctx.fpr[14])); rt.memory().aot_store_word_left(ctx.gpr[12] + static_cast(3), ctx.gpr[5]); rt.memory().aot_store_word_right(ctx.gpr[12] + static_cast(0), ctx.gpr[5]); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[4] + static_cast(8))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[15])); rt.memory().aot_store_word_left(ctx.gpr[13] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[13] + static_cast(0), ctx.gpr[4]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(112))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[12])); rt.memory().aot_store_word_left(ctx.gpr[14] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[14] + static_cast(0), ctx.gpr[4]); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(116))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[13])); rt.memory().aot_store_word_left(ctx.gpr[15] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[15] + static_cast(0), ctx.gpr[4]); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(120))); ctx.gpr[4] = (std::bit_cast(ctx.fpr[14])); rt.memory().aot_store_word_left(ctx.gpr[25] + static_cast(3), ctx.gpr[4]); rt.memory().aot_store_word_right(ctx.gpr[25] + static_cast(0), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(420))); aot_mem.aot_store8(ctx.gpr[29] + static_cast(336), static_cast(ctx.gpr[4])); ctx.gpr[4] = (0u | 2000u); rt.memory().aot_store_word_right(ctx.gpr[29] + static_cast(337), ctx.gpr[4]); rt.memory().aot_store_word_left(ctx.gpr[29] + static_cast(340), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(412))); ctx.gpr[1] = (std::bit_cast(ctx.fpr[26])); rt.memory().aot_store_word_right(ctx.gpr[29] + static_cast(341), ctx.gpr[1]); rt.memory().aot_store_word_left(ctx.gpr[29] + static_cast(344), ctx.gpr[1]); aot_mem.aot_store8(ctx.gpr[29] + static_cast(345), static_cast(ctx.gpr[4])); ctx.gpr[4] = (2237u << 16u); ctx.gpr[17] = (ctx.gpr[4] + static_cast(-28736)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(408))); ctx.gpr[31] = (0x08881780u); ctx.gpr[4] = (ctx.gpr[17] | 0u); goto L_08880938; L_08881780: ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[2] + static_cast(8))); aot_mem.aot_store16(ctx.gpr[29] + static_cast(346), static_cast(ctx.gpr[4])); ctx.gpr[4] = (ctx.gpr[17] | 0u); ctx.gpr[5] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08881798u); ctx.gpr[6] = (0u + static_cast(-1)); if (rt.invoke_chained_direct<&recomp_unit_0182_entry, 182u, 186u, 0x08ADC9FCu>(ctx, &aot_mem) && ctx.pc == 0x08881798u) goto L_08881798; return; L_08881798: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(100))); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(52))); ctx.gpr[2] = (ctx.gpr[4] | 0u); goto L_088817A4; L_088817A4: ctx.gpr[6] = (ctx.gpr[29] + static_cast(32)); ctx.gpr[7] = (ctx.gpr[29] + static_cast(112)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(424))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(408))); ctx.gpr[8] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(420))); ctx.gpr[9] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(416))); ctx.gpr[10] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(412))); ctx.gpr[11] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(428))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[26])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[31] = (0x088817D4u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[2]); goto L_08881838; L_088817D4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(104))); ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[16] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_088817F8; } goto L_088817E4; } L_088817E4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088817F8; } goto L_088817F0; } L_088817F0: ctx.gpr[31] = (0x088817F8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(96))); if (rt.invoke_chained_direct<&recomp_unit_0117_entry, 117u, 129u, 0x089D89E0u>(ctx, &aot_mem) && ctx.pc == 0x088817F8u) goto L_088817F8; return; L_088817F8: ctx.gpr[2] = (ctx.gpr[16] | 0u); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(436))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(440))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(444))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(448))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(452))); ctx.fpr[30] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(456))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(460))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(464))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(468))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(472))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(476))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(480))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(484))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(496)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08881838: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-64)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), ctx.gpr[30]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), ctx.gpr[31]); ctx.gpr[8] = (ctx.gpr[8] & 255u); ctx.gpr[30] = (ctx.gpr[10] & 255u); aot_mem.aot_store8(ctx.gpr[29] + static_cast(0), static_cast(ctx.gpr[8])); ctx.gpr[23] = (ctx.gpr[11] & 255u); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(64))); ctx.gpr[19] = (ctx.gpr[19] & 255u); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(68))); ctx.gpr[18] = (0u | 0u); ctx.gpr[21] = (ctx.gpr[4] | 0u); ctx.gpr[20] = (ctx.gpr[5] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[6]); ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[7]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[9]); ctx.gpr[4] = (ctx.gpr[18] << 4u); goto L_088818A4; L_088818A4: ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25008)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (static_cast(ctx.gpr[18]) < 32 ? 1u : 0u); if (branch_taken) { goto L_088818D8; } goto L_088818C4; } L_088818C4: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088818D8; } goto L_088818CC; } L_088818CC: ctx.gpr[18] = (ctx.gpr[18] + static_cast(1)); { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (ctx.gpr[18] << 4u); if (branch_taken) { goto L_088818A4; } goto L_088818D8; } L_088818D8: ctx.gpr[4] = (0u | 32u); { const bool branch_taken = ctx.gpr[18] == ctx.gpr[4]; // nop if (branch_taken) { goto L_0888190C; } goto L_088818E4; } L_088818E4: ctx.gpr[4] = (ctx.gpr[21] + static_cast(-12)); ctx.gpr[4] = (ctx.gpr[4] < static_cast(7) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (ctx.gpr[21] + static_cast(-12)); if (branch_taken) { goto L_08881C08; } goto L_088818F4; } L_088818F4: ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + ctx.gpr[4]); ctx.gpr[1] = (aot_mem.aot_load32(ctx.gpr[1] + static_cast(-23808))); jump_target = ctx.gpr[1]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_0888190C: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u | 0u); if (branch_taken) { goto L_08881DC8; } goto L_08881914; } L_08881914: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x08881920u); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x08881920u) goto L_08881920; return; L_08881920: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_08881944; } goto L_0888192C; } L_0888192C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (0u | 343u); ctx.gpr[31] = (0x0888193Cu); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x0888193Cu) goto L_0888193C; return; L_0888193C: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_08881944; L_08881944: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881C08; } goto L_0888195C; } L_0888195C: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x08881968u); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x08881968u) goto L_08881968; return; L_08881968: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_0888198C; } goto L_08881974; } L_08881974: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (0u | 342u); ctx.gpr[31] = (0x08881984u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x08881984u) goto L_08881984; return; L_08881984: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_0888198C; L_0888198C: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); ctx.gpr[4] = (17948u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 16384u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(212), std::bit_cast(ctx.fpr[12])); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881C08; } goto L_088819B4; } L_088819B4: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x088819C0u); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x088819C0u) goto L_088819C0; return; L_088819C0: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_088819E8; } goto L_088819CC; } L_088819CC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(104))); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(82))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088819E0u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x088819E0u) goto L_088819E0; return; L_088819E0: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_088819E8; L_088819E8: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); ctx.gpr[5] = (17948u << 16u); ctx.gpr[5] = (ctx.gpr[5] | 16384u); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[17] + static_cast(212), std::bit_cast(ctx.fpr[12])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (ctx.gpr[7] & 1u); ctx.gpr[9] = (65535u << 16u); ctx.gpr[9] = (ctx.gpr[9] + static_cast(-1)); ctx.gpr[6] = (ctx.gpr[6] & ctx.gpr[9]); ctx.gpr[8] = (ctx.gpr[8] << 16u); ctx.gpr[6] = (ctx.gpr[6] | ctx.gpr[8]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(72), ctx.gpr[6]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[8] = (0u | 0u); ctx.gpr[8] = (ctx.gpr[8] & 1u); ctx.gpr[9] = (65532u << 16u); ctx.gpr[9] = (ctx.gpr[9] + static_cast(-1)); ctx.gpr[6] = (ctx.gpr[6] & ctx.gpr[9]); ctx.gpr[8] = (ctx.gpr[8] << 18u); ctx.gpr[6] = (ctx.gpr[6] | ctx.gpr[8]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(72), ctx.gpr[6]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[4] + static_cast(483)))))); ctx.gpr[6] = (ctx.gpr[7] & 1u); ctx.gpr[7] = (0u + static_cast(-5)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[7]); ctx.gpr[6] = (ctx.gpr[6] << 2u); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[6]); aot_mem.aot_store8(ctx.gpr[4] + static_cast(483), static_cast(ctx.gpr[5])); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881C08; } goto L_08881A80; } L_08881A80: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x08881A8Cu); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x08881A8Cu) goto L_08881A8C; return; L_08881A8C: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_08881AB4; } goto L_08881A98; } L_08881A98: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(104))); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(130))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08881AACu); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x08881AACu) goto L_08881AAC; return; L_08881AAC: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_08881AB4; L_08881AB4: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(208))); ctx.gpr[5] = (15363u << 16u); ctx.gpr[5] = (ctx.gpr[5] | 4719u); ctx.fpr[13] = std::bit_cast(ctx.gpr[5]); { 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[5] = (17096u << 16u); ctx.fpr[14] = std::bit_cast(ctx.gpr[5]); { 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; } ctx.gpr[5] = (16968u << 16u); ctx.fpr[15] = std::bit_cast(ctx.gpr[5]); ctx.fpr[12] = ctx.fpr[12] / ctx.fpr[15]; aot_mem.aot_store32(ctx.gpr[17] + static_cast(344), std::bit_cast(ctx.fpr[12])); ctx.gpr[5] = (17948u << 16u); ctx.gpr[5] = (ctx.gpr[5] | 16384u); ctx.fpr[12] = std::bit_cast(ctx.gpr[5]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[5] + static_cast(212), std::bit_cast(ctx.fpr[12])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (ctx.gpr[7] & 1u); ctx.gpr[9] = (65535u << 16u); ctx.gpr[9] = (ctx.gpr[9] + static_cast(-1)); ctx.gpr[6] = (ctx.gpr[6] & ctx.gpr[9]); ctx.gpr[8] = (ctx.gpr[8] << 16u); ctx.gpr[6] = (ctx.gpr[6] | ctx.gpr[8]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(72), ctx.gpr[6]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[8] = (0u | 0u); ctx.gpr[8] = (ctx.gpr[8] & 1u); ctx.gpr[9] = (65532u << 16u); ctx.gpr[9] = (ctx.gpr[9] + static_cast(-1)); ctx.gpr[6] = (ctx.gpr[6] & ctx.gpr[9]); ctx.gpr[8] = (ctx.gpr[8] << 18u); ctx.gpr[6] = (ctx.gpr[6] | ctx.gpr[8]); aot_mem.aot_store32(ctx.gpr[5] + static_cast(72), ctx.gpr[6]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[4] + static_cast(483)))))); ctx.gpr[6] = (ctx.gpr[7] & 1u); ctx.gpr[7] = (0u + static_cast(-5)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[7]); ctx.gpr[6] = (ctx.gpr[6] << 2u); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[6]); aot_mem.aot_store8(ctx.gpr[4] + static_cast(483), static_cast(ctx.gpr[5])); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881C08; } goto L_08881B80; } L_08881B80: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x08881B8Cu); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x08881B8Cu) goto L_08881B8C; return; L_08881B8C: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_08881BB0; } goto L_08881B98; } L_08881B98: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (0u | 344u); ctx.gpr[31] = (0x08881BA8u); ctx.gpr[6] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x08881BA8u) goto L_08881BA8; return; L_08881BA8: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_08881BB0; L_08881BB0: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881C08; } goto L_08881BC8; } L_08881BC8: ctx.gpr[17] = (0u | 0u); ctx.gpr[31] = (0x08881BD4u); ctx.gpr[4] = (0u | 512u); if (rt.invoke_chained_direct<&recomp_unit_0009_entry, 9u, 392u, 0x0882B994u>(ctx, &aot_mem) && ctx.pc == 0x08881BD4u) goto L_08881BD4; return; L_08881BD4: ctx.gpr[16] = (ctx.gpr[2] | 0u); { const bool branch_taken = ctx.gpr[16] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 2u); if (branch_taken) { goto L_08881BF8; } goto L_08881BE0; } L_08881BE0: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (0u | 345u); ctx.gpr[31] = (0x08881BF0u); ctx.gpr[6] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0091_entry, 91u, 318u, 0x08971AD8u>(ctx, &aot_mem) && ctx.pc == 0x08881BF0u) goto L_08881BF0; return; L_08881BF0: ctx.gpr[17] = (ctx.gpr[16] | 0u); ctx.gpr[4] = (ctx.gpr[18] << 2u); goto L_08881BF8; L_08881BF8: ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[17]); goto L_08881C08; L_08881C08: ctx.gpr[4] = (ctx.gpr[18] << 2u); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08881C54; } goto L_08881C24; } L_08881C24: ctx.gpr[4] = (ctx.gpr[18] << 4u); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25008)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(0), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(4), ctx.gpr[20]); { const bool branch_taken = ctx.gpr[20] != 0u; // nop if (branch_taken) { goto L_08881C5C; } goto L_08881C4C; } L_08881C4C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881CA8; } goto L_08881C54; } L_08881C54: { const bool branch_taken = 0u == 0u; ctx.gpr[2] = (0u + static_cast(-1)); if (branch_taken) { goto L_08881DC8; } goto L_08881C5C; } L_08881C5C: ctx.gpr[4] = (ctx.gpr[18] << 4u); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25008)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[4] = (ctx.gpr[18] << 4u); if (branch_taken) { goto L_08881CA8; } goto L_08881C80; } L_08881C80: ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (2240u << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-25008)); ctx.gpr[6] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(4)); ctx.gpr[5] = (ctx.gpr[5] + ctx.gpr[4]); ctx.gpr[31] = (0x08881CA8u); ctx.gpr[4] = (ctx.gpr[6] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 419u, 0x08A92F78u>(ctx, &aot_mem) && ctx.pc == 0x08881CA8u) goto L_08881CA8; return; L_08881CA8: ctx.gpr[4] = (ctx.gpr[18] << 2u); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[16] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[31] = (0x08881CC4u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(12))); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 7u, 0x08860358u>(ctx, &aot_mem) && ctx.pc == 0x08881CC4u) goto L_08881CC4; return; L_08881CC4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[31] = (0x08881CD0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 538u, 0x08A666C0u>(ctx, &aot_mem) && ctx.pc == 0x08881CD0u) goto L_08881CD0; return; L_08881CD0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(236))); ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[29] + static_cast(0))); ctx.gpr[7] = (0u + static_cast(-3)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[7]); ctx.gpr[6] = (ctx.gpr[6] & 1u); ctx.gpr[6] = (ctx.gpr[6] << 1u); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(236), ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[18] << 4u); ctx.gpr[5] = (ctx.gpr[4] + ctx.gpr[4]); ctx.gpr[17] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (2240u << 16u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.gpr[19] = (ctx.gpr[4] + static_cast(-25008)); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[4] + static_cast(8), ctx.gpr[5]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[5] + static_cast(224), std::bit_cast(ctx.fpr[20])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); aot_mem.aot_store8(ctx.gpr[5] + static_cast(474), static_cast(ctx.gpr[30])); ctx.gpr[5] = (0u | 1u); aot_mem.aot_store8(ctx.gpr[4] + static_cast(12), static_cast(ctx.gpr[5])); aot_mem.aot_store8(ctx.gpr[4] + static_cast(32), static_cast(ctx.gpr[23])); aot_mem.aot_store32(ctx.gpr[4] + static_cast(36), ctx.gpr[22]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[4] + static_cast(482)))))); ctx.gpr[6] = (0u | 0u); ctx.gpr[6] = (ctx.gpr[6] & 1u); ctx.gpr[7] = (0u + static_cast(-65)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[7]); ctx.gpr[6] = (ctx.gpr[6] << 6u); ctx.gpr[5] = (ctx.gpr[5] | ctx.gpr[6]); aot_mem.aot_store8(ctx.gpr[4] + static_cast(482), static_cast(ctx.gpr[5])); ctx.gpr[31] = (0x08881D60u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 224u, 0x08891A2Cu>(ctx, &aot_mem) && ctx.pc == 0x08881D60u) goto L_08881D60; return; L_08881D60: ctx.gpr[4] = (ctx.gpr[19] + static_cast(16)); ctx.gpr[4] = (ctx.gpr[17] + ctx.gpr[4]); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[5] + 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); } { 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 bool branch_taken = ctx.gpr[20] == 0u; // nop if (branch_taken) { goto L_08881DC0; } goto L_08881D80; } L_08881D80: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + 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_08881DC0; } goto L_08881D9C; } L_08881D9C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[20] + static_cast(2116))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08881DC0; } goto L_08881DA8; } L_08881DA8: ctx.gpr[4] = (ctx.gpr[18] << 2u); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); aot_mem.aot_store32(ctx.gpr[20] + static_cast(2116), ctx.gpr[4]); goto L_08881DC0; L_08881DC0: ctx.gpr[2] = (ctx.gpr[18] << 24u); ctx.gpr[2] = (static_cast(static_cast(ctx.gpr[2]) >> 24u)); goto L_08881DC8; L_08881DC8: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(40))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(44))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(48))); ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(52))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); 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_08881DFC: 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[16] = (ctx.gpr[5] | 0u); ctx.gpr[5] = (ctx.gpr[6] & 255u); { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_08881FC8; } goto L_08881E18; } L_08881E18: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08881FC8; } goto L_08881E20; } L_08881E20: ctx.gpr[6] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(12))); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08881FC8; } goto L_08881E2C; } L_08881E2C: aot_mem.aot_store8(ctx.gpr[4] + static_cast(12), static_cast(0u)); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881E38; } L_08881E38: ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[16] + static_cast(482)))))); ctx.gpr[6] = (ctx.gpr[5] & 64u); 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_08881F98; } goto L_08881E50; } L_08881E50: ctx.gpr[6] = (0u + static_cast(-65)); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[6]); ctx.gpr[5] = (ctx.gpr[5] | 64u); aot_mem.aot_store8(ctx.gpr[16] + static_cast(482), static_cast(ctx.gpr[5])); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-12)); ctx.gpr[6] = (ctx.gpr[5] < static_cast(7) ? 1u : 0u); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881E74; } L_08881E74: ctx.gpr[5] = (ctx.gpr[5] << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + ctx.gpr[5]); ctx.gpr[1] = (aot_mem.aot_load32(ctx.gpr[1] + static_cast(-23776))); jump_target = ctx.gpr[1]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08881E8C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[7] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[11] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(32))); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[31] = (0x08881EB0u); ctx.gpr[10] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08881EB0u) goto L_08881EB0; return; L_08881EB0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881EB8; } L_08881EB8: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[7] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[31] = (0x08881EDCu); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08881EDCu) goto L_08881EDC; return; L_08881EDC: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881EE4; } L_08881EE4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(496))); if (branch_taken) { goto L_08881F3C; } goto L_08881EF0; } L_08881EF0: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(72))); ctx.gpr[6] = (ctx.gpr[6] & 14u); ctx.gpr[6] = (ctx.gpr[6] >> 1u); ctx.gpr[7] = (0u | 2u); { const bool branch_taken = ctx.gpr[6] != ctx.gpr[7]; // nop if (branch_taken) { goto L_08881F3C; } goto L_08881F08; } L_08881F08: { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08881F64; } goto L_08881F10; } L_08881F10: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(900))); ctx.gpr[7] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 2u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 1u); ctx.gpr[31] = (0x08881F34u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08881F34u) goto L_08881F34; return; L_08881F34: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881F64; } goto L_08881F3C; } L_08881F3C: { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08881F64; } goto L_08881F44; } L_08881F44: ctx.gpr[7] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 2u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 1u); ctx.gpr[31] = (0x08881F64u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08881F64u) goto L_08881F64; return; L_08881F64: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881F6C; } L_08881F6C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(4))); ctx.gpr[7] = (ctx.gpr[16] + static_cast(48)); ctx.gpr[11] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(32))); ctx.gpr[4] = (0u | 0u); ctx.gpr[6] = (0u | 8u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[31] = (0x08881F90u); ctx.gpr[10] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08881F90u) goto L_08881F90; return; L_08881F90: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08881F98; } goto L_08881F98; } L_08881F98: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08881FA4u); ctx.gpr[5] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 247u, 0x08891B8Cu>(ctx, &aot_mem) && ctx.pc == 0x08881FA4u) goto L_08881FA4; return; L_08881FA4: { const bool branch_taken = ctx.gpr[16] == 0u; // nop if (branch_taken) { goto L_08881FC8; } goto L_08881FAC; } L_08881FAC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(92))); ctx.gpr[5] = (ctx.gpr[4] + static_cast(24)); ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[5] + static_cast(0)))))); ctx.gpr[4] = (ctx.gpr[16] + ctx.gpr[4]); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(4))); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x08881FC8u); ctx.gpr[5] = (0u | 3u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08881FC8u) goto L_08881FC8; return; L_08881FC8: 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_08881FD8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-304)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(236), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(240), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(244), std::bit_cast(ctx.fpr[24])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(248), std::bit_cast(ctx.fpr[26])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(252), std::bit_cast(ctx.fpr[28])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(256), std::bit_cast(ctx.fpr[30])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(260), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(264), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(268), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(272), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(276), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(280), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(284), ctx.gpr[22]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(288), ctx.gpr[23]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(292), ctx.gpr[30]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(296), ctx.gpr[31]); ctx.gpr[5] = (2240u << 16u); ctx.gpr[5] = (ctx.gpr[5] + static_cast(-25136)); ctx.gpr[6] = (2240u << 16u); ctx.gpr[6] = (ctx.gpr[6] + static_cast(-25008)); ctx.gpr[4] = (0u | 0u); ctx.gpr[7] = (16256u << 16u); ctx.fpr[20] = std::bit_cast(ctx.gpr[7]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(228), ctx.gpr[4]); ctx.gpr[4] = (15692u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[24] = std::bit_cast(ctx.gpr[4]); ctx.fpr[22] = std::bit_cast(0u); ctx.gpr[4] = (16179u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 13107u); ctx.fpr[30] = std::bit_cast(ctx.gpr[4]); ctx.gpr[30] = (ctx.gpr[29] + static_cast(96)); ctx.gpr[4] = (16264u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 62915u); ctx.fpr[28] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16384u << 16u); ctx.fpr[26] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (0u | 0u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[6]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(224), ctx.gpr[5]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(220), ctx.gpr[4]); goto L_08882080; L_08882080: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(224))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(0))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(220))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[22] + static_cast(12))); ctx.gpr[16] = (0u | 15u); ctx.gpr[18] = (16u << 16u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[19] = (0u | 16u); if (branch_taken) { goto L_088828BC; } goto L_088820A0; } L_088820A0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088820DC; } goto L_088820AC; } L_088820AC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); 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] >> 1u); ctx.gpr[5] = (0u | 3u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088820DC; } goto L_088820C8; } L_088820C8: ctx.gpr[31] = (0x088820D0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); if (rt.invoke_chained_direct<&recomp_unit_0064_entry, 64u, 561u, 0x08906858u>(ctx, &aot_mem) && ctx.pc == 0x088820D0u) goto L_088820D0; return; L_088820D0: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_088820DC; } goto L_088820D8; } L_088820D8: aot_mem.aot_store32(ctx.gpr[22] + static_cast(4), 0u); goto L_088820DC; L_088820DC: { const bool branch_taken = ctx.gpr[21] == 0u; // nop if (branch_taken) { goto L_088828B8; } goto L_088820E4; } L_088820E4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[17] = (ctx.gpr[21] + static_cast(320)); ctx.gpr[5] = (0u | 13u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[20] = (ctx.gpr[21] + static_cast(48)); if (branch_taken) { goto L_08882114; } goto L_088820F8; } L_088820F8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[5] = (0u | 12u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882114; } goto L_08882108; } L_08882108: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[19]; // nop if (branch_taken) { goto L_08882188; } goto L_08882114; } L_08882114: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[21] + static_cast(224))); ctx.gpr[4] = (15820u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882188; } goto L_08882134; } L_08882134: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[21] + static_cast(320))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[12]) & 0x7FFFFFFFu); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[24])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882188; } goto L_0888214C; } L_0888214C: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[21] + static_cast(324))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[12]) & 0x7FFFFFFFu); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[24])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882188; } goto L_08882164; } L_08882164: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[21] + static_cast(328))); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[12]) & 0x7FFFFFFFu); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[24])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.gpr[4] = (15605u << 16u); if (branch_taken) { goto L_08882188; } goto L_0888217C; } L_0888217C: ctx.gpr[4] = (ctx.gpr[4] | 49807u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[21] + static_cast(224), std::bit_cast(ctx.fpr[12])); goto L_08882188; L_08882188: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[28] + static_cast(7676))); 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[17] + 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(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[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[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])); } ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[4] = (50453u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 24576u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882238; } goto L_088821D8; } L_088821D8: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[4] = (17606u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 49152u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882238; } goto L_088821F8; } L_088821F8: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[4] = (50424u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 49152u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882238; } goto L_08882218; } L_08882218: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(36))); ctx.gpr[4] = (17656u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 49152u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882250; } goto L_08882238; } L_08882238: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08882248u); ctx.gpr[6] = (0u | 0u); goto L_08881DFC; L_08882248: { const bool branch_taken = 0u == 0u; ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(228))); if (branch_taken) { goto L_088828C0; } goto L_08882250; } L_08882250: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[19]; ctx.gpr[23] = (ctx.gpr[22] + static_cast(16)); if (branch_taken) { goto L_0888236C; } goto L_0888225C; } L_0888225C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-19500)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] < ctx.gpr[5] ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_0888236C; } goto L_08882274; } L_08882274: aot_mem.aot_store32(ctx.gpr[29] + static_cast(232), std::bit_cast(ctx.fpr[20])); ctx.gpr[4] = (15948u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[12] - ctx.fpr[22]; aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[12])); ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[22])); ctx.gpr[19] = (ctx.gpr[29] + static_cast(48)); ctx.gpr[4] = (0u | 23u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[19] | 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] = (0x088822C4u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x088822C4u) goto L_088822C4; return; L_088822C4: ctx.gpr[4] = (48716u << 16u); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.fpr[12] = ctx.fpr[12] - ctx.fpr[22]; aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (0u | 23u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[19] | 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] = (0x08882308u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08882308u) goto L_08882308; return; L_08882308: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22]) ^ 0x80000000u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (0u | 23u); ctx.gpr[5] = (ctx.gpr[20] | 0u); ctx.gpr[6] = (ctx.gpr[19] | 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] = (0x08882340u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 716u, 0x088FF060u>(ctx, &aot_mem) && ctx.pc == 0x08882340u) goto L_08882340; return; L_08882340: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] & 512u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(232))); if (branch_taken) { goto L_0888236C; } goto L_08882350; } L_08882350: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(8))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); ctx.gpr[5] = (16576u << 16u); ctx.gpr[31] = (0x0888236Cu); ctx.fpr[15] = std::bit_cast(ctx.gpr[5]); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 600u, 0x088939E0u>(ctx, &aot_mem) && ctx.pc == 0x0888236Cu) goto L_0888236C; return; L_0888236C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[19] = (0u | 18u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[19]; // nop if (branch_taken) { goto L_088823BC; } goto L_0888237C; } L_0888237C: aot_mem.aot_store32(ctx.gpr[29] + static_cast(64), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(68), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(72), std::bit_cast(ctx.fpr[22])); ctx.gpr[4] = (0u | 73u); ctx.gpr[7] = (ctx.gpr[29] + static_cast(64)); ctx.gpr[5] = (ctx.gpr[23] | 0u); ctx.gpr[6] = (ctx.gpr[20] | 0u); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[30])); ctx.gpr[8] = (0u | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[9] = (0u | 0u); ctx.gpr[2] = (0u | 3000u); ctx.gpr[10] = (0u | 0u); ctx.gpr[11] = (0u | 0u); ctx.gpr[31] = (0x088823BCu); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[2]); if (rt.invoke_chained_direct<&recomp_unit_0062_entry, 62u, 710u, 0x088FEEE8u>(ctx, &aot_mem) && ctx.pc == 0x088823BCu) goto L_088823BC; return; L_088823BC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(8))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] < ctx.gpr[5] ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088824A8; } goto L_088823D0; } L_088823D0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(8))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088824A8; } goto L_088823DC; } L_088823DC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[5] = (0u | 13u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882490; } goto L_088823EC; } L_088823EC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_088823F8; } L_088823F8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); 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_088828A8; } goto L_08882418; } L_08882418: ctx.gpr[31] = (0x08882420u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08882420u) goto L_08882420; return; L_08882420: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_08882428; } L_08882428: ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882438u); ctx.gpr[5] = (0u | 36u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 51u, 0x089082A8u>(ctx, &aot_mem) && ctx.pc == 0x08882438u) goto L_08882438; return; L_08882438: ctx.gpr[4] = (ctx.gpr[2] << 5u); ctx.gpr[5] = (ctx.gpr[2] << 2u); ctx.gpr[4] = (ctx.gpr[4] - ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[16] + 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[5] = (0u | 36u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; ctx.gpr[4] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_08882484; } goto L_0888245C; } L_0888245C: ctx.gpr[31] = (0x08882464u); ctx.gpr[5] = (0u | 36u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 51u, 0x089082A8u>(ctx, &aot_mem) && ctx.pc == 0x08882464u) goto L_08882464; return; L_08882464: ctx.gpr[4] = (ctx.gpr[2] << 5u); ctx.gpr[5] = (ctx.gpr[2] << 2u); ctx.gpr[4] = (ctx.gpr[4] - ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[16] + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] + static_cast(1396)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(16))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882488; } goto L_08882484; } L_08882484: aot_mem.aot_store32(ctx.gpr[22] + static_cast(8), 0u); goto L_08882488; L_08882488: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_08882490; } L_08882490: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x088824A0u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_088824A0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_088824A8; } L_088824A8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[19]; // nop if (branch_taken) { goto L_0888256C; } goto L_088824B4; } L_088824B4: { 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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[30] + 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[28] + static_cast(8068), ctx.gpr[21]); ctx.gpr[16] = (aot_mem.aot_load8(ctx.gpr[28] + static_cast(8072))); ctx.gpr[16] = (0u < ctx.gpr[16] ? 1u : 0u); aot_mem.aot_store8(ctx.gpr[28] + static_cast(8072), static_cast(0u)); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[21] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[18]); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[4] = (ctx.gpr[23] | 0u); if (branch_taken) { goto L_0888252C; } goto L_088824DC; } L_088824DC: ctx.gpr[5] = (ctx.gpr[30] | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (0u | 1u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[11] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[31] = (0x08882504u); 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 == 0x08882504u) goto L_08882504; return; L_08882504: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[4] = (ctx.gpr[30] | 0u); if (branch_taken) { goto L_0888252C; } goto L_0888250C; } L_0888250C: ctx.gpr[31] = (0x08882514u); ctx.gpr[5] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0122_entry, 122u, 323u, 0x089EE2E0u>(ctx, &aot_mem) && ctx.pc == 0x08882514u) goto L_08882514; return; L_08882514: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_0888252C; } goto L_0888251C; } L_0888251C: ctx.gpr[31] = (0x08882524u); ctx.gpr[4] = (ctx.gpr[30] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0126_entry, 126u, 395u, 0x089FD9F8u>(ctx, &aot_mem) && ctx.pc == 0x08882524u) goto L_08882524; return; L_08882524: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0888253C; } goto L_0888252C; } L_0888252C: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x0888253Cu); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_0888253C: aot_mem.aot_store8(ctx.gpr[28] + static_cast(8072), static_cast(ctx.gpr[16])); aot_mem.aot_store32(ctx.gpr[28] + static_cast(8068), 0u); ctx.gpr[4] = (std::bit_cast(ctx.fpr[28])); ctx.set_vfpu_scalar_bits_ct<28u>(ctx.gpr[4]); { const std::uint32_t vfpu_address = ctx.gpr[17] + 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(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])); } ctx.gpr[31] = (0x08882564u); ctx.gpr[4] = (ctx.gpr[21] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0152_entry, 152u, 538u, 0x08A666C0u>(ctx, &aot_mem) && ctx.pc == 0x08882564u) goto L_08882564; return; L_08882564: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_0888256C; } L_0888256C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[5] = (0u | 17u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882630; } goto L_0888257C; } L_0888257C: { 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[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])); } aot_mem.aot_store32(ctx.gpr[28] + static_cast(8068), ctx.gpr[21]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088825D4; } goto L_08882598; } L_08882598: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(4))); { const std::uint32_t vfpu_address = ctx.gpr[23] + 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[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<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(112)); { 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[26])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882624; } goto L_088825D4; } L_088825D4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[21] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & ctx.gpr[18]); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[4] = (ctx.gpr[23] | 0u); if (branch_taken) { goto L_08882614; } goto L_088825E4; } L_088825E4: ctx.gpr[5] = (ctx.gpr[6] | 0u); ctx.gpr[6] = (0u | 1u); ctx.gpr[7] = (0u | 1u); ctx.gpr[8] = (0u | 1u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 0u); ctx.gpr[11] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), 0u); ctx.gpr[31] = (0x0888260Cu); 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 == 0x0888260Cu) goto L_0888260C; return; L_0888260C: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08882624; } goto L_08882614; } L_08882614: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08882624u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_08882624: aot_mem.aot_store32(ctx.gpr[28] + static_cast(8068), 0u); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_08882630; } L_08882630: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); ctx.gpr[6] = (0u | 14u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[6]; // nop if (branch_taken) { goto L_0888264C; } goto L_08882640; } L_08882640: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[16]; // nop if (branch_taken) { goto L_088828A8; } goto L_0888264C; } L_0888264C: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[21] + static_cast(91)))))); ctx.gpr[5] = (0u + static_cast(-1)); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882674; } goto L_0888265C; } L_0888265C: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x0888266Cu); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_0888266C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_08882674; } L_08882674: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); if (ctx.gpr[4] != ctx.gpr[6]) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); goto L_088826A4; } goto L_08882680; L_08882680: { const std::uint32_t vfpu_address = ctx.gpr[17] + 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((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[22])) && ctx.fpr[12] == ctx.fpr[22])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_088826BC; } goto L_088826A0; } L_088826A0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[22] + static_cast(0))); goto L_088826A4; L_088826A4: { const bool branch_taken = ctx.gpr[4] != ctx.gpr[16]; // nop if (branch_taken) { goto L_088828A8; } goto L_088826AC; } L_088826AC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[21] + static_cast(236))); ctx.gpr[4] = (ctx.gpr[4] & 256u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_088826BC; } L_088826BC: ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[21] + static_cast(310))); { const bool branch_taken = static_cast(ctx.gpr[4]) <= 0; // nop if (branch_taken) { goto L_0888274C; } goto L_088826C8; } L_088826C8: ctx.gpr[17] = (0u | 0u); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[21] + static_cast(310))); ctx.gpr[4] = (static_cast(ctx.gpr[17]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[16] = (ctx.gpr[21] | 0u); if (branch_taken) { goto L_08882744; } goto L_088826DC; } L_088826DC: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(240))); { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08882730; } goto L_088826E8; } L_088826E8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 2u); 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_08882730; } goto L_08882704; } L_08882704: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[6] + static_cast(72))); ctx.gpr[4] = (ctx.gpr[4] & 14u); ctx.gpr[4] = (ctx.gpr[4] ^ 8u); 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_08882730; } goto L_08882720; } L_08882720: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08882730u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_08882730: ctx.gpr[17] = (ctx.gpr[17] + static_cast(1)); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[21] + static_cast(310))); ctx.gpr[4] = (static_cast(ctx.gpr[17]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[16] = (ctx.gpr[16] + static_cast(4)); if (branch_taken) { goto L_088826DC; } goto L_08882744; } L_08882744: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088828A8; } goto L_0888274C; } L_0888274C: ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15972))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[16] = (ctx.gpr[4] + static_cast(-1)); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[19] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_088827FC; } goto L_08882760; } L_08882760: ctx.gpr[4] = (ctx.gpr[16] << 5u); ctx.gpr[17] = (0u + ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] << 6u); ctx.gpr[17] = (ctx.gpr[17] + ctx.gpr[4]); goto L_08882770; L_08882770: { const bool branch_taken = static_cast(ctx.gpr[16]) < 0; // nop if (branch_taken) { goto L_08882788; } goto L_08882778; } L_08882778: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(4))); goto L_08882790; } goto L_08882788; L_08882788: { const bool branch_taken = 0u == 0u; ctx.gpr[6] = (0u | 0u); if (branch_taken) { goto L_088827B0; } goto L_08882790; } L_08882790: ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[16]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[4] = (ctx.gpr[4] & 128u); if (ctx.gpr[4] == 0u) { ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); goto L_088827AC; } goto L_088827A4; L_088827A4: { const bool branch_taken = 0u == 0u; ctx.gpr[6] = (0u | 0u); if (branch_taken) { goto L_088827B0; } goto L_088827AC; } L_088827AC: ctx.gpr[6] = (ctx.gpr[6] + ctx.gpr[17]); goto L_088827B0; L_088827B0: { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_088827E8; } goto L_088827B8; } L_088827B8: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[6] | 0u); ctx.gpr[31] = (0x088827D0u); ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0179_entry, 179u, 213u, 0x08AD1028u>(ctx, &aot_mem) && ctx.pc == 0x088827D0u) goto L_088827D0; return; L_088827D0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088827E8; } goto L_088827D8; } L_088827D8: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x088827E8u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_088827E8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[16] = (ctx.gpr[19] + static_cast(-1)); ctx.gpr[19] = (ctx.gpr[16] | 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (ctx.gpr[17] + static_cast(-2080)); if (branch_taken) { goto L_08882770; } goto L_088827FC; } L_088827FC: ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15976))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[16] = (ctx.gpr[4] + static_cast(-1)); { const bool branch_taken = ctx.gpr[4] == 0u; ctx.gpr[19] = (ctx.gpr[16] | 0u); if (branch_taken) { goto L_088828A8; } goto L_08882810; } L_08882810: ctx.gpr[4] = (0u + static_cast(3344)); { const std::int64_t product = static_cast(static_cast(ctx.gpr[16])) * static_cast(static_cast(ctx.gpr[4])); ctx.lo = static_cast(product); ctx.hi = static_cast(static_cast(product) >> 32u); } ctx.gpr[17] = (ctx.lo); goto L_0888281C; L_0888281C: { const bool branch_taken = static_cast(ctx.gpr[16]) < 0; // nop if (branch_taken) { goto L_08882834; } goto L_08882824; } L_08882824: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[4] = (static_cast(ctx.gpr[16]) < static_cast(ctx.gpr[4]) ? 1u : 0u); if (ctx.gpr[4] != 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(4))); goto L_0888283C; } goto L_08882834; L_08882834: { const bool branch_taken = 0u == 0u; ctx.gpr[6] = (0u | 0u); if (branch_taken) { goto L_0888285C; } goto L_0888283C; } L_0888283C: ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[16]); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(0))); ctx.gpr[4] = (ctx.gpr[4] & 128u); if (ctx.gpr[4] == 0u) { ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(0))); goto L_08882858; } goto L_08882850; L_08882850: { const bool branch_taken = 0u == 0u; ctx.gpr[6] = (0u | 0u); if (branch_taken) { goto L_0888285C; } goto L_08882858; } L_08882858: ctx.gpr[6] = (ctx.gpr[6] + ctx.gpr[17]); goto L_0888285C; L_0888285C: { const bool branch_taken = ctx.gpr[6] == 0u; // nop if (branch_taken) { goto L_08882894; } goto L_08882864; } L_08882864: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[20] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[6] | 0u); ctx.gpr[31] = (0x0888287Cu); ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0179_entry, 179u, 213u, 0x08AD1028u>(ctx, &aot_mem) && ctx.pc == 0x0888287Cu) goto L_0888287C; return; L_0888287C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882894; } goto L_08882884; } L_08882884: ctx.gpr[4] = (ctx.gpr[22] | 0u); ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[31] = (0x08882894u); ctx.gpr[6] = (0u | 1u); goto L_08881DFC; L_08882894: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[16] = (ctx.gpr[19] + static_cast(-1)); ctx.gpr[19] = (ctx.gpr[16] | 0u); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (ctx.gpr[17] + static_cast(-3344)); if (branch_taken) { goto L_0888281C; } goto L_088828A8; } L_088828A8: { 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); } { float vfpu_value[4]{}; ctx.read_vfpu_vector_ct<0u, 4u>(vfpu_value); const std::uint32_t vfpu_address = ctx.gpr[23] + 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_088828BC; } goto L_088828B8; } L_088828B8: aot_mem.aot_store8(ctx.gpr[22] + static_cast(12), static_cast(0u)); goto L_088828BC; L_088828BC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(228))); goto L_088828C0; L_088828C0: ctx.gpr[4] = (ctx.gpr[4] + static_cast(1)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(224))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(220))); ctx.gpr[5] = (ctx.gpr[5] + static_cast(4)); ctx.gpr[6] = (ctx.gpr[6] + static_cast(48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(228), ctx.gpr[4]); ctx.gpr[4] = (static_cast(ctx.gpr[4]) < 32 ? 1u : 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(224), ctx.gpr[5]); { const bool branch_taken = ctx.gpr[4] != 0u; aot_mem.aot_store32(ctx.gpr[29] + static_cast(220), ctx.gpr[6]); if (branch_taken) { goto L_08882080; } goto L_088828E8; } L_088828E8: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(236))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(240))); ctx.fpr[24] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(244))); ctx.fpr[26] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(248))); ctx.fpr[28] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(252))); ctx.fpr[30] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(256))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(260))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(264))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(268))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(272))); ctx.gpr[20] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(276))); ctx.gpr[21] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(280))); ctx.gpr[22] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(284))); ctx.gpr[23] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(288))); ctx.gpr[30] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(292))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(296))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(304)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08882930: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(676))); 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]); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[16] = (ctx.gpr[4] | 0u); if (branch_taken) { goto L_088829E8; } goto L_08882948; } L_08882948: aot_mem.aot_store32(ctx.gpr[16] + static_cast(676), 0u); ctx.gpr[31] = (0x08882954u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0064_entry, 64u, 620u, 0x08906DE4u>(ctx, &aot_mem) && ctx.pc == 0x08882954u) goto L_08882954; return; L_08882954: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088829D0; } goto L_0888295C; } L_0888295C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882968u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08882968u) goto L_08882968; return; L_08882968: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2276))); ctx.gpr[5] = (0u | 2u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882988; } goto L_08882978; } L_08882978: ctx.gpr[31] = (0x08882980u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 282u, 0x0890905Cu>(ctx, &aot_mem) && ctx.pc == 0x08882980u) goto L_08882980; return; L_08882980: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088829E8; } goto L_08882988; } L_08882988: ctx.gpr[31] = (0x08882990u); // nop if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 110u, 0x08B20934u>(ctx, &aot_mem) && ctx.pc == 0x08882990u) goto L_08882990; return; L_08882990: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26260))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26264))); ctx.gpr[4] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x088829A4u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 177u, 0x08B60E5Cu>(ctx, &aot_mem) && ctx.pc == 0x088829A4u) goto L_088829A4; return; L_088829A4: ctx.gpr[1] = (ctx.gpr[3] << 1u); ctx.gpr[4] = (ctx.gpr[2] >> 31u); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[3]) >> 31u)); ctx.gpr[4] = (ctx.gpr[1] | ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[4] | 0u); ctx.gpr[5] = (ctx.gpr[4] << 24u); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[5]) >> 24u)); ctx.gpr[31] = (0x088829C8u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 631u, 0x0890A728u>(ctx, &aot_mem) && ctx.pc == 0x088829C8u) goto L_088829C8; return; L_088829C8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088829E8; } goto L_088829D0; } L_088829D0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088829E8; } goto L_088829DC; } L_088829DC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(464))); ctx.gpr[4] = (ctx.gpr[4] | 8u); aot_mem.aot_store32(ctx.gpr[16] + static_cast(464), ctx.gpr[4]); goto L_088829E8; L_088829E8: 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_088829F8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-176)); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(676))); ctx.gpr[6] = (16128u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(140), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(152), ctx.gpr[17]); ctx.fpr[20] = std::bit_cast(ctx.gpr[6]); ctx.gpr[17] = (0u | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(144), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(148), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(156), ctx.gpr[18]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(160), ctx.gpr[19]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(164), ctx.gpr[31]); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[16] = (ctx.gpr[4] | 0u); if (branch_taken) { goto L_08882B30; } goto L_08882A30; } L_08882A30: ctx.gpr[31] = (0x08882A38u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882A38u) goto L_08882A38; return; L_08882A38: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[4] = (ctx.gpr[16] + static_cast(48)); if (branch_taken) { goto L_08882A50; } goto L_08882A40; } L_08882A40: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1152))); { const bool branch_taken = ctx.gpr[5] != 0u; // nop if (branch_taken) { goto L_08882A7C; } goto L_08882A50; } L_08882A50: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (ctx.gpr[5] + 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[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_08882AA4; } goto L_08882A7C; } L_08882A7C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1152))); ctx.gpr[5] = (ctx.gpr[5] + 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[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_08882AA4; L_08882AA4: { 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); } 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.gpr[4] = (17505u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } { 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[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_08882AD8; } goto L_08882AD4; } L_08882AD4: ctx.gpr[17] = (0u | 1u); goto L_08882AD8; L_08882AD8: ctx.gpr[31] = (0x08882AE0u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882AE0u) goto L_08882AE0; return; L_08882AE0: ctx.gpr[18] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x08882AECu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882AECu) goto L_08882AEC; return; L_08882AEC: { const bool branch_taken = ctx.gpr[18] == ctx.gpr[2]; // nop if (branch_taken) { goto L_08882B30; } goto L_08882AF4; } L_08882AF4: ctx.gpr[31] = (0x08882AFCu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08882AFCu) goto L_08882AFC; return; L_08882AFC: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882B30; } goto L_08882B04; } L_08882B04: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2228))); ctx.gpr[5] = (0u | 50u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[5] = (0u | 22u); if (branch_taken) { goto L_08882B24; } goto L_08882B14; } L_08882B14: { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; ctx.gpr[5] = (0u | 16u); if (branch_taken) { goto L_08882B24; } goto L_08882B1C; } L_08882B1C: { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882B30; } goto L_08882B24; } L_08882B24: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-1)); aot_mem.aot_store32(ctx.gpr[16] + static_cast(1756), ctx.gpr[4]); goto L_08882B30; L_08882B30: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1756))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] < ctx.gpr[5] ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882B4C; } goto L_08882B44; } L_08882B44: { const bool branch_taken = ctx.gpr[17] == 0u; // nop if (branch_taken) { goto L_08882B60; } goto L_08882B4C; } L_08882B4C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882B68; } goto L_08882B58; } L_08882B58: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882B60; } L_08882B60: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882B68; } L_08882B68: { 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); } 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[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[4] = (16880u << 16u); ctx.fpr[22] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[22])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882C24; } goto L_08882B94; } L_08882B94: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(464))); ctx.gpr[4] = (512u << 16u); ctx.gpr[5] = (ctx.gpr[5] & ctx.gpr[4]); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_08882C14; } goto L_08882BA8; } L_08882BA8: ctx.gpr[31] = (0x08882BB0u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0064_entry, 64u, 620u, 0x08906DE4u>(ctx, &aot_mem) && ctx.pc == 0x08882BB0u) goto L_08882BB0; return; L_08882BB0: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882C0C; } goto L_08882BB8; } L_08882BB8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2276))); ctx.gpr[5] = (0u | 1u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882BEC; } goto L_08882BC8; } L_08882BC8: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882BD8u); ctx.gpr[5] = (0u | 12u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08882BD8u) goto L_08882BD8; return; L_08882BD8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882BE4u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0176_entry, 176u, 1084u, 0x08AC7F30u>(ctx, &aot_mem) && ctx.pc == 0x08882BE4u) goto L_08882BE4; return; L_08882BE4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08882C0C; } goto L_08882BEC; } L_08882BEC: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882BF8u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08882BF8u) goto L_08882BF8; return; L_08882BF8: ctx.gpr[31] = (0x08882C00u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 282u, 0x0890905Cu>(ctx, &aot_mem) && ctx.pc == 0x08882C00u) goto L_08882C00; return; L_08882C00: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882C0Cu); ctx.gpr[5] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 982u, 0x0890BE50u>(ctx, &aot_mem) && ctx.pc == 0x08882C0Cu) goto L_08882C0C; return; L_08882C0C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882C14; } L_08882C14: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(464))); ctx.gpr[4] = (ctx.gpr[5] | ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(464), ctx.gpr[4]); if (branch_taken) { goto L_08882C38; } goto L_08882C24; } L_08882C24: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(464))); ctx.gpr[5] = (65024u << 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[16] + static_cast(464), ctx.gpr[4]); goto L_08882C38; L_08882C38: ctx.gpr[31] = (0x08882C40u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0064_entry, 64u, 620u, 0x08906DE4u>(ctx, &aot_mem) && ctx.pc == 0x08882C40u) goto L_08882C40; return; L_08882C40: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088833D0; } goto L_08882C48; } L_08882C48: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2236))); ctx.gpr[17] = (0u | 16u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[17]; // nop if (branch_taken) { goto L_08882C60; } goto L_08882C58; } L_08882C58: ctx.gpr[31] = (0x08882C60u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0130_entry, 130u, 86u, 0x08A0C7BCu>(ctx, &aot_mem) && ctx.pc == 0x08882C60u) goto L_08882C60; return; L_08882C60: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); 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_08882C90; } goto L_08882C78; } L_08882C78: ctx.gpr[31] = (0x08882C80u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882C80u) goto L_08882C80; return; L_08882C80: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882CB0; } goto L_08882C88; } L_08882C88: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08882D48; } goto L_08882C90; } L_08882C90: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882C9Cu); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 475u, 0x0890DF20u>(ctx, &aot_mem) && ctx.pc == 0x08882C9Cu) goto L_08882C9C; return; L_08882C9C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882CA8u); ctx.gpr[5] = (0u | 3u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08882CA8u) goto L_08882CA8; return; L_08882CA8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882CB0; } L_08882CB0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 18u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882D28; } goto L_08882CC4; } L_08882CC4: ctx.gpr[31] = (0x08882CCCu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882CCCu) goto L_08882CCC; return; L_08882CCC: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882D08; } goto L_08882CD4; } L_08882CD4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 7u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882D00; } goto L_08882CE4; } L_08882CE4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[17]; // nop if (branch_taken) { goto L_08882D00; } goto L_08882CF0; } L_08882CF0: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1152))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882D00u); ctx.gpr[5] = (0u | 16u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08882D00u) goto L_08882D00; return; L_08882D00: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882D08; } L_08882D08: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 17u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882D28; } goto L_08882D18; } L_08882D18: ctx.gpr[31] = (0x08882D20u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0176_entry, 176u, 1089u, 0x08AC7F64u>(ctx, &aot_mem) && ctx.pc == 0x08882D20u) goto L_08882D20; return; L_08882D20: ctx.gpr[31] = (0x08882D28u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0129_entry, 129u, 78u, 0x08A08AE0u>(ctx, &aot_mem) && ctx.pc == 0x08882D28u) goto L_08882D28; return; L_08882D28: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1360))); ctx.gpr[5] = (0u | 20u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_08882D48; } goto L_08882D38; } L_08882D38: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2276))); ctx.gpr[5] = (0u | 1u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882D60; } goto L_08882D48; } L_08882D48: ctx.gpr[31] = (0x08882D50u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882D50u) goto L_08882D50; return; L_08882D50: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882D74; } goto L_08882D58; } L_08882D58: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08882DFC; } goto L_08882D60; } L_08882D60: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882D6Cu); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 475u, 0x0890DF20u>(ctx, &aot_mem) && ctx.pc == 0x08882D6Cu) goto L_08882D6C; return; L_08882D6C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882D74; } L_08882D74: ctx.gpr[31] = (0x08882D7Cu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x08882D7Cu) goto L_08882D7C; return; L_08882D7C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882DFC; } goto L_08882D84; } L_08882D84: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 55u); 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_08882DFC; } goto L_08882D9C; } L_08882D9C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 17u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882DF4; } goto L_08882DAC; } L_08882DAC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 18u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08882DF4; } goto L_08882DBC; } L_08882DBC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[31] = (0x08882DC8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1152))); if (rt.invoke_chained_direct<&recomp_unit_0191_entry, 191u, 559u, 0x08B021B0u>(ctx, &aot_mem) && ctx.pc == 0x08882DC8u) goto L_08882DC8; return; L_08882DC8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1152))); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[4] + static_cast(565))); ctx.gpr[4] = (static_cast(ctx.gpr[2]) < static_cast(ctx.gpr[4]) ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08882DF4; } goto L_08882DE0; } L_08882DE0: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1152))); ctx.gpr[31] = (0x08882DF4u); ctx.gpr[5] = (0u | 17u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08882DF4u) goto L_08882DF4; return; L_08882DF4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882DFC; } L_08882DFC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08882E30; } goto L_08882E0C; } L_08882E0C: ctx.gpr[31] = (0x08882E14u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08882E14u) goto L_08882E14; return; L_08882E14: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088831EC; } goto L_08882E1C; } L_08882E1C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 1u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088831EC; } goto L_08882E30; } L_08882E30: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); 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[17]; // nop if (branch_taken) { goto L_08882EF4; } goto L_08882E44; } L_08882E44: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(468))); ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882EF4; } goto L_08882E54; } L_08882E54: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1716))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882E64; } L_08882E64: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 8u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_088834E8; } goto L_08882E74; } L_08882E74: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 3u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1716))); 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] >> 1u); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_088834E8; } goto L_08882E94; } L_08882E94: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1716))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[16]; // nop if (branch_taken) { goto L_088834E8; } goto L_08882EA4; } L_08882EA4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1716))); ctx.gpr[31] = (0x08882EB8u); ctx.gpr[5] = (0u | 8u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08882EB8u) goto L_08882EB8; return; L_08882EB8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882EC4u); ctx.gpr[5] = (0u | 8000u); if (rt.invoke_chained_direct<&recomp_unit_0176_entry, 176u, 1084u, 0x08AC7F30u>(ctx, &aot_mem) && ctx.pc == 0x08882EC4u) goto L_08882EC4; return; L_08882EC4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1716))); ctx.gpr[6] = (0u | 0u); ctx.gpr[7] = (0u | 0u); ctx.gpr[31] = (0x08882EE0u); ctx.gpr[8] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 442u, 0x08909A64u>(ctx, &aot_mem) && ctx.pc == 0x08882EE0u) goto L_08882EE0; return; L_08882EE0: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08882EECu); ctx.gpr[5] = (0u | 500u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 326u, 0x089092DCu>(ctx, &aot_mem) && ctx.pc == 0x08882EECu) goto L_08882EEC; return; L_08882EEC: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08882EF4; } L_08882EF4: ctx.gpr[19] = (0u | 0u); ctx.gpr[31] = (0x08882F00u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0064_entry, 64u, 620u, 0x08906DE4u>(ctx, &aot_mem) && ctx.pc == 0x08882F00u) goto L_08882F00; return; L_08882F00: { const bool branch_taken = ctx.gpr[2] == 0u; ctx.gpr[18] = (0u | 1u); if (branch_taken) { goto L_08882F18; } goto L_08882F08; } L_08882F08: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2228))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[17]; // nop if (branch_taken) { goto L_08882F18; } goto L_08882F14; } L_08882F14: ctx.gpr[19] = (ctx.gpr[18] | 0u); goto L_08882F18; L_08882F18: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[31] = (0x08882F24u); ctx.gpr[19] = (ctx.gpr[19] & 255u); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x08882F24u) goto L_08882F24; return; L_08882F24: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08882FBC; } goto L_08882F2C; } L_08882F2C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2076))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882FBC; } goto L_08882F3C; } L_08882F3C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 22u); 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_08882FBC; } goto L_08882F54; } L_08882F54: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2244))); ctx.gpr[4] = (static_cast(ctx.gpr[4]) < 2 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882FBC; } goto L_08882F68; } L_08882F68: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[4] + 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] = (0x08882F84u); ctx.gpr[4] = (ctx.gpr[4] + ctx.gpr[6]); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x08882F84u) goto L_08882F84; return; L_08882F84: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(12))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08882FBC; } goto L_08882F90; } L_08882F90: { 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); } 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[12] = std::bit_cast(ctx.gpr[4]); { const float fs = ctx.fpr[20]; 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; } ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); // nop if (branch_taken) { goto L_08882FBC; } goto L_08882FB8; } L_08882FB8: ctx.gpr[19] = (ctx.gpr[18] | 0u); goto L_08882FBC; L_08882FBC: { const bool branch_taken = ctx.gpr[19] == 0u; // nop if (branch_taken) { goto L_08883048; } goto L_08882FC4; } L_08882FC4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_0888302C; } goto L_08882FD4; } L_08882FD4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[5]; // nop if (branch_taken) { goto L_0888302C; } goto L_08882FE8; } L_08882FE8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 20u); 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_0888302C; } goto L_08883000; } L_08883000: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2228))); 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_0888302C; } goto L_08883018; } L_08883018: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883024u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08883024u) goto L_08883024; return; L_08883024: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08883048; } goto L_0888302C; } L_0888302C: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x0888303Cu); ctx.gpr[5] = (0u | 12u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x0888303Cu) goto L_0888303C; return; L_0888303C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883048u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0176_entry, 176u, 1084u, 0x08AC7F30u>(ctx, &aot_mem) && ctx.pc == 0x08883048u) goto L_08883048; return; L_08883048: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2228))); { const bool branch_taken = ctx.gpr[4] != ctx.gpr[18]; // nop if (branch_taken) { goto L_088831E4; } goto L_08883054; } L_08883054: ctx.gpr[31] = (0x0888305Cu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0066_entry, 66u, 315u, 0x0890D44Cu>(ctx, &aot_mem) && ctx.pc == 0x0888305Cu) goto L_0888305C; return; L_0888305C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_08883064; } L_08883064: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(468))); ctx.gpr[4] = (ctx.gpr[4] & 1u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_08883074; } L_08883074: ctx.gpr[31] = (0x0888307Cu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0069_entry, 69u, 31u, 0x0891826Cu>(ctx, &aot_mem) && ctx.pc == 0x0888307Cu) goto L_0888307C; return; L_0888307C: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_08883084; } L_08883084: ctx.gpr[31] = (0x0888308Cu); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x0888308Cu) goto L_0888308C; return; L_0888308C: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_0888313C; } goto L_08883094; } L_08883094: ctx.gpr[5] = (16752u << 16u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[31] = (0x088830A4u); ctx.fpr[20] = std::bit_cast(ctx.gpr[5]); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x088830A4u) goto L_088830A4; return; L_088830A4: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0888313C; } goto L_088830AC; } L_088830AC: { 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); } 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[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_0888313C; } goto L_088830D0; } L_088830D0: ctx.gpr[31] = (0x088830D8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x088830D8u) goto L_088830D8; return; L_088830D8: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + 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_08883128; } goto L_088830F4; } L_088830F4: ctx.gpr[31] = (0x088830FCu); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x088830FCu) goto L_088830FC; return; L_088830FC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[2] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_08883120; } goto L_0888310C; } L_0888310C: ctx.gpr[31] = (0x08883114u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x08883114u) goto L_08883114; return; L_08883114: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883120u); ctx.gpr[5] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 69u, 0x08910440u>(ctx, &aot_mem) && ctx.pc == 0x08883120u) goto L_08883120; return; L_08883120: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_0888313C; } goto L_08883128; } L_08883128: ctx.gpr[31] = (0x08883130u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x08883130u) goto L_08883130; return; L_08883130: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x0888313Cu); ctx.gpr[5] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 69u, 0x08910440u>(ctx, &aot_mem) && ctx.pc == 0x0888313Cu) goto L_0888313C; return; L_0888313C: ctx.gpr[31] = (0x08883144u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x08883144u) goto L_08883144; return; L_08883144: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_0888314C; } L_0888314C: ctx.gpr[31] = (0x08883154u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x08883154u) goto L_08883154; return; L_08883154: { const bool branch_taken = ctx.gpr[2] == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(1716), ctx.gpr[2]); if (branch_taken) { goto L_08883168; } goto L_0888315C; } L_0888315C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1716))); ctx.gpr[31] = (0x08883168u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(1716)); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 419u, 0x08A92F78u>(ctx, &aot_mem) && ctx.pc == 0x08883168u) goto L_08883168; return; L_08883168: ctx.gpr[31] = (0x08883170u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 332u, 0x0890932Cu>(ctx, &aot_mem) && ctx.pc == 0x08883170u) goto L_08883170; return; L_08883170: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1744))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] < ctx.gpr[5] ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_08883184; } L_08883184: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[16] + 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[16] + ctx.gpr[4]); ctx.gpr[31] = (0x088831A0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(1396)); if (rt.invoke_chained_direct<&recomp_unit_0143_entry, 143u, 159u, 0x08A40D34u>(ctx, &aot_mem) && ctx.pc == 0x088831A0u) goto L_088831A0; return; L_088831A0: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_088831E4; } goto L_088831A8; } L_088831A8: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(92))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[17] = (ctx.gpr[5] + static_cast(240)); ctx.gpr[5] = (static_cast(static_cast(static_cast(aot_mem.aot_load16(ctx.gpr[17] + static_cast(0)))))); ctx.gpr[31] = (0x088831C0u); ctx.gpr[18] = (ctx.gpr[16] + ctx.gpr[5]); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x088831C0u) goto L_088831C0; return; L_088831C0: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.gpr[4] = (ctx.gpr[18] | 0u); jump_target = ctx.gpr[6]; ctx.gpr[31] = (0x088831D0u); ctx.gpr[5] = (ctx.gpr[2] | 0u); ctx.pc = jump_target; if (rt.invoke_chained_call(ctx, &aot_mem) && ctx.pc == 0x088831D0u) goto L_088831D0; return; L_088831D0: ctx.gpr[31] = (0x088831D8u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 27u, 0x089101A4u>(ctx, &aot_mem) && ctx.pc == 0x088831D8u) goto L_088831D8; return; L_088831D8: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088831E4u); ctx.gpr[5] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0056_entry, 56u, 716u, 0x088E76D4u>(ctx, &aot_mem) && ctx.pc == 0x088831E4u) goto L_088831E4; return; L_088831E4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_088831EC; } L_088831EC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); { const bool branch_taken = ctx.gpr[5] == ctx.gpr[4]; // nop if (branch_taken) { goto L_088834E8; } goto L_08883200; } L_08883200: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(-1)); ctx.gpr[5] = (ctx.gpr[4] < static_cast(32) ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; // nop if (branch_taken) { goto L_088833AC; } goto L_08883218; } L_08883218: ctx.gpr[4] = (ctx.gpr[4] << 2u); ctx.gpr[1] = (2232u << 16u); ctx.gpr[1] = (ctx.gpr[1] + ctx.gpr[4]); ctx.gpr[1] = (aot_mem.aot_load32(ctx.gpr[1] + static_cast(-23744))); jump_target = ctx.gpr[1]; // nop local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08883230: aot_mem.aot_store32(ctx.gpr[16] + static_cast(676), 0u); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883240u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08883240u) goto L_08883240; return; L_08883240: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883248; } L_08883248: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1156))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883310; } goto L_08883258; } L_08883258: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(150)); aot_mem.aot_store32(ctx.gpr[16] + static_cast(1728), ctx.gpr[4]); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1156))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883278u); ctx.gpr[5] = (0u | 17u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08883278u) goto L_08883278; return; L_08883278: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1156))); 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); } 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<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(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])); } { 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.gpr[4] = (17096u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08883310; } goto L_088832C4; } L_088832C4: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 61u); 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_088832F4; } goto L_088832DC; } L_088832DC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 59u); 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_08883310; } goto L_088832F4; } L_088832F4: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883304u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(1156))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 188u, 0x08910AD4u>(ctx, &aot_mem) && ctx.pc == 0x08883304u) goto L_08883304; return; L_08883304: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883310u); ctx.gpr[5] = (0u | 24u); if (rt.invoke_chained_direct<&recomp_unit_0065_entry, 65u, 240u, 0x08908D60u>(ctx, &aot_mem) && ctx.pc == 0x08883310u) goto L_08883310; return; L_08883310: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883318; } L_08883318: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883328u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2196))); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 442u, 0x08ACD4BCu>(ctx, &aot_mem) && ctx.pc == 0x08883328u) goto L_08883328; return; L_08883328: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1756))); { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[16] + static_cast(1756), ctx.gpr[4]); if (branch_taken) { goto L_088834E8; } goto L_08883338; } L_08883338: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883340; } L_08883340: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[4] + static_cast(2096)); { 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[6] = (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[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[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x08883360u); ctx.gpr[5] = (0u | 4u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 661u, 0x08ACDF58u>(ctx, &aot_mem) && ctx.pc == 0x08883360u) goto L_08883360; return; L_08883360: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1756))); aot_mem.aot_store32(ctx.gpr[16] + static_cast(1756), ctx.gpr[4]); { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883374; } L_08883374: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2192))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088833A4; } goto L_08883384; } L_08883384: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2192))); ctx.gpr[31] = (0x08883398u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[5] + static_cast(2196))); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x08883398u) goto L_08883398; return; L_08883398: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1756))); aot_mem.aot_store32(ctx.gpr[16] + static_cast(1756), ctx.gpr[4]); goto L_088833A4; L_088833A4: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_088833AC; } L_088833AC: ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088833BCu); ctx.gpr[5] = (0u | 12u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x088833BCu) goto L_088833BC; return; L_088833BC: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088833C8u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0176_entry, 176u, 1084u, 0x08AC7F30u>(ctx, &aot_mem) && ctx.pc == 0x088833C8u) goto L_088833C8; return; L_088833C8: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_088833D0; } L_088833D0: ctx.gpr[31] = (0x088833D8u); ctx.gpr[4] = (ctx.gpr[16] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x088833D8u) goto L_088833D8; return; L_088833D8: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_088833E0; } L_088833E0: ctx.gpr[31] = (0x088833E8u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); if (rt.invoke_chained_direct<&recomp_unit_0067_entry, 67u, 195u, 0x08910B38u>(ctx, &aot_mem) && ctx.pc == 0x088833E8u) goto L_088833E8; return; L_088833E8: if (ctx.gpr[2] == 0u) { ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); goto L_0888340C; } goto L_088833F0; L_088833F0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (0u | 63u); 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_088834E8; } goto L_08883408; } L_08883408: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); goto L_0888340C; L_0888340C: ctx.gpr[5] = (0u | 7u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_088834E8; } goto L_08883418; } L_08883418: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(2196))); ctx.gpr[5] = (static_cast(ctx.gpr[4]) < 17 ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] != 0u; ctx.gpr[4] = (static_cast(ctx.gpr[4]) < 19 ? 1u : 0u); if (branch_taken) { goto L_08883464; } goto L_0888342C; } L_0888342C: { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883464; } goto L_08883434; } L_08883434: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1152))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1152))); { const bool branch_taken = ctx.gpr[5] == ctx.gpr[4]; // nop if (branch_taken) { goto L_0888345C; } goto L_08883448; } L_08883448: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(676))); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1152))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1156))); { const bool branch_taken = ctx.gpr[5] != ctx.gpr[4]; // nop if (branch_taken) { goto L_08883464; } goto L_0888345C; } L_0888345C: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883464; } L_08883464: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1152))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088834E8; } goto L_08883470; } L_08883470: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(2196))); ctx.gpr[5] = (0u | 16u); { const bool branch_taken = ctx.gpr[4] == ctx.gpr[5]; // nop if (branch_taken) { goto L_088834E8; } goto L_08883480; } L_08883480: ctx.gpr[31] = (0x08883488u); // nop if (rt.invoke_chained_direct<&recomp_unit_0199_entry, 199u, 110u, 0x08B20934u>(ctx, &aot_mem) && ctx.pc == 0x08883488u) goto L_08883488; return; L_08883488: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26252))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26256))); ctx.gpr[4] = (ctx.gpr[2] | 0u); ctx.gpr[31] = (0x0888349Cu); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 177u, 0x08B60E5Cu>(ctx, &aot_mem) && ctx.pc == 0x0888349Cu) goto L_0888349C; return; L_0888349C: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26244))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26248))); 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[8] = (ctx.gpr[6] + ctx.gpr[4]); ctx.gpr[9] = (ctx.gpr[8] < ctx.gpr[4] ? 1u : 0u); ctx.gpr[6] = (ctx.gpr[9] + ctx.gpr[7]); ctx.gpr[5] = (ctx.gpr[6] + ctx.gpr[5]); ctx.gpr[4] = (ctx.gpr[8] | 0u); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(7660))); ctx.gpr[4] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (ctx.gpr[6] + ctx.gpr[4]); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(1152))); aot_mem.aot_store32(ctx.gpr[16] + static_cast(1728), ctx.gpr[4]); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[31] = (0x088834E8u); ctx.gpr[5] = (0u | 16u); if (rt.invoke_chained_direct<&recomp_unit_0178_entry, 178u, 482u, 0x08ACD698u>(ctx, &aot_mem) && ctx.pc == 0x088834E8u) goto L_088834E8; return; L_088834E8: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(140))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(144))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(148))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(152))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(156))); ctx.gpr[19] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(160))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(164))); 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_0888350C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[16]); ctx.gpr[16] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[16] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 4u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[31]); ctx.gpr[31] = (0x08883534u); ctx.gpr[7] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883534u) goto L_08883534; return; L_08883534: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); 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[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[14])); ctx.gpr[4] = (0u | 0u); ctx.gpr[5] = (0u | 0u); ctx.gpr[7] = (ctx.gpr[29] | 0u); ctx.gpr[8] = (0u | 0u); ctx.gpr[9] = (0u | 1u); ctx.gpr[10] = (0u | 1u); ctx.gpr[31] = (0x08883570u); ctx.gpr[11] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 287u, 0x089E974Cu>(ctx, &aot_mem) && ctx.pc == 0x08883570u) goto L_08883570; return; L_08883570: ctx.gpr[2] = (0u | 0u); 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[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); 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_08883588: 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] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[16] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 2u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x088835B0u); ctx.gpr[7] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x088835B0u) goto L_088835B0; return; L_088835B0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15972))); ctx.gpr[31] = (0x088835BCu); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem) && ctx.pc == 0x088835BCu) goto L_088835BC; return; L_088835BC: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (ctx.gpr[2] | 0u); if (branch_taken) { goto L_088835D8; } goto L_088835C8; } L_088835C8: ctx.gpr[31] = (0x088835D0u); ctx.gpr[5] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0011_entry, 11u, 604u, 0x08832988u>(ctx, &aot_mem) && ctx.pc == 0x088835D0u) goto L_088835D0; return; L_088835D0: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_088835E0; } goto L_088835D8; } L_088835D8: ctx.gpr[31] = (0x088835E0u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0011_entry, 11u, 604u, 0x08832988u>(ctx, &aot_mem) && ctx.pc == 0x088835E0u) goto L_088835E0; return; L_088835E0: ctx.gpr[2] = (0u | 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[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_088835F8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-48)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[16]); ctx.gpr[16] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[18]); ctx.gpr[17] = (2236u << 16u); ctx.gpr[18] = (ctx.gpr[16] + static_cast(16)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[19]); ctx.gpr[19] = (ctx.gpr[17] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[6] = (0u | 3u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[31]); ctx.gpr[31] = (0x08883638u); ctx.gpr[7] = (ctx.gpr[19] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883638u) goto L_08883638; return; L_08883638: ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[19] + static_cast(8))); ctx.gpr[4] = (49864u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((!(std::isnan(ctx.fpr[12]) || std::isnan(ctx.fpr[13])) && ctx.fpr[12] == ctx.fpr[13])); // nop { const bool branch_taken = ctx.fpu_condition(); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[19] + static_cast(4))); if (branch_taken) { goto L_08883670; } goto L_08883658; } L_08883658: ctx.gpr[4] = (50042u << 16u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.set_fpu_condition((ctx.fpr[12] <= ctx.fpr[13])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08883680; } goto L_08883670; } L_08883670: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); ctx.gpr[31] = (0x0888367Cu); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[20])); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 514u, 0x088933E8u>(ctx, &aot_mem) && ctx.pc == 0x0888367Cu) goto L_0888367C; return; L_0888367C: ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08883680; L_08883680: 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[20])); ctx.gpr[4] = (16204u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[12])); ctx.gpr[4] = (ctx.gpr[4] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); ctx.gpr[5] = (ctx.gpr[29] | 0u); ctx.gpr[4] = (2238u << 16u); ctx.gpr[6] = (0u | 0u); ctx.gpr[7] = (0u | 1u); ctx.gpr[31] = (0x088836B0u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); if (rt.invoke_chained_direct<&recomp_unit_0114_entry, 114u, 717u, 0x089CFFB8u>(ctx, &aot_mem) && ctx.pc == 0x088836B0u) goto L_088836B0; return; L_088836B0: aot_mem.aot_store32(ctx.gpr[17] + static_cast(29704), ctx.gpr[2]); ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x088836C4u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem) && ctx.pc == 0x088836C4u) goto L_088836C4; return; L_088836C4: ctx.gpr[2] = (0u | 0u); ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(16))); ctx.fpr[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(28))); ctx.gpr[18] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(32))); ctx.gpr[19] = (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_088836EC: 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); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[17]); ctx.gpr[17] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[16] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[31]); ctx.gpr[31] = (0x08883714u); ctx.gpr[7] = (ctx.gpr[17] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883714u) goto L_08883714; return; L_08883714: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); ctx.gpr[5] = (ctx.gpr[4] << 16u); ctx.gpr[17] = (0u | 0u); ctx.gpr[4] = (2238u << 16u); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[5]) >> 16u)); ctx.gpr[31] = (0x08883730u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); if (rt.invoke_chained_direct<&recomp_unit_0115_entry, 115u, 38u, 0x089D0344u>(ctx, &aot_mem) && ctx.pc == 0x08883730u) goto L_08883730; return; L_08883730: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_0888373C; } goto L_08883738; } L_08883738: ctx.gpr[17] = (0u | 1u); goto L_0888373C; L_0888373C: ctx.gpr[4] = (0u < ctx.gpr[17] ? 1u : 0u); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(524))); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[17] = (ctx.gpr[4] ^ ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (0u < ctx.gpr[17] ? 1u : 0u); if (branch_taken) { goto L_08883768; } goto L_08883760; } L_08883760: { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_088837B0; } goto L_08883768; } L_08883768: ctx.gpr[4] = (ctx.gpr[16] + static_cast(518)); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (ctx.gpr[5] + static_cast(-1)); aot_mem.aot_store16(ctx.gpr[4] + static_cast(0), static_cast(ctx.gpr[6])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(521))); ctx.gpr[5] = (static_cast(ctx.gpr[5]) < 9 ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); if (branch_taken) { goto L_08883794; } goto L_08883788; } L_08883788: ctx.gpr[4] = (ctx.gpr[17] & ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); if (branch_taken) { goto L_088837B0; } goto L_08883794; } L_08883794: ctx.gpr[4] = (ctx.gpr[17] | ctx.gpr[4]); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); ctx.gpr[4] = (static_cast(ctx.gpr[5]) < 21 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_088837B0; } goto L_088837AC; } L_088837AC: aot_mem.aot_store16(ctx.gpr[16] + static_cast(518), static_cast(0u)); goto L_088837B0; L_088837B0: ctx.gpr[2] = (0u | 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[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_088837C8: 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] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x088837E8u); ctx.gpr[7] = (ctx.gpr[16] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x088837E8u) goto L_088837E8; return; L_088837E8: ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); ctx.gpr[4] = (2238u << 16u); ctx.gpr[5] = (ctx.gpr[5] << 16u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); ctx.gpr[31] = (0x08883800u); ctx.gpr[5] = (static_cast(static_cast(ctx.gpr[5]) >> 16u)); if (rt.invoke_chained_direct<&recomp_unit_0115_entry, 115u, 39u, 0x089D0360u>(ctx, &aot_mem) && ctx.pc == 0x08883800u) goto L_08883800; return; L_08883800: ctx.gpr[2] = (0u | 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_08883814: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-16)); ctx.gpr[4] = (2238u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(0), ctx.gpr[31]); ctx.gpr[31] = (0x08883828u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); if (rt.invoke_chained_direct<&recomp_unit_0115_entry, 115u, 41u, 0x089D0398u>(ctx, &aot_mem) && ctx.pc == 0x08883828u) goto L_08883828; return; L_08883828: ctx.gpr[2] = (0u | 0u); 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_08883838: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[16]); 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]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[31]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[18] = (ctx.gpr[16] + static_cast(16)); ctx.gpr[17] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[17] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08883868u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883868u) goto L_08883868; return; L_08883868: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15972))); ctx.gpr[31] = (0x08883874u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem) && ctx.pc == 0x08883874u) goto L_08883874; return; L_08883874: ctx.gpr[4] = (ctx.gpr[2] | 0u); 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<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[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(596))); { const bool branch_taken = ctx.gpr[5] != 0u; // nop if (branch_taken) { goto L_088838BC; } goto L_08883890; } L_08883890: ctx.gpr[6] = (16204u << 16u); ctx.gpr[6] = (ctx.gpr[6] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[6]); ctx.gpr[5] = (ctx.gpr[29] | 0u); ctx.gpr[6] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (2238u << 16u); ctx.gpr[7] = (0u | 1u); ctx.gpr[31] = (0x088838B4u); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); if (rt.invoke_chained_direct<&recomp_unit_0114_entry, 114u, 717u, 0x089CFFB8u>(ctx, &aot_mem) && ctx.pc == 0x088838B4u) goto L_088838B4; return; L_088838B4: { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[17] + static_cast(29704), ctx.gpr[2]); if (branch_taken) { goto L_088838C4; } goto L_088838BC; } L_088838BC: ctx.gpr[4] = (0u + static_cast(-1)); aot_mem.aot_store32(ctx.gpr[17] + static_cast(29704), ctx.gpr[4]); goto L_088838C4; L_088838C4: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x088838D4u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem) && ctx.pc == 0x088838D4u) goto L_088838D4; return; L_088838D4: ctx.gpr[2] = (0u | 0u); 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[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_088838F0: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[16]); 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]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), ctx.gpr[31]); ctx.gpr[16] = (ctx.gpr[4] | 0u); ctx.gpr[18] = (ctx.gpr[16] + static_cast(16)); ctx.gpr[17] = (2236u << 16u); ctx.gpr[7] = (ctx.gpr[17] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x08883920u); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883920u) goto L_08883920; return; L_08883920: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15976))); ctx.gpr[31] = (0x0888392Cu); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 431u, 0x08B65C68u>(ctx, &aot_mem) && ctx.pc == 0x0888392Cu) goto L_0888392C; return; L_0888392C: ctx.gpr[4] = (ctx.gpr[2] | 0u); 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<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[5] = (aot_mem.aot_load32(ctx.gpr[4] + static_cast(1712))); { const bool branch_taken = ctx.gpr[5] != 0u; // nop if (branch_taken) { goto L_08883974; } goto L_08883948; } L_08883948: ctx.gpr[6] = (16204u << 16u); ctx.gpr[6] = (ctx.gpr[6] | 52429u); ctx.fpr[12] = std::bit_cast(ctx.gpr[6]); ctx.gpr[5] = (ctx.gpr[29] | 0u); ctx.gpr[6] = (ctx.gpr[4] | 0u); ctx.gpr[4] = (2238u << 16u); ctx.gpr[7] = (0u | 1u); ctx.gpr[31] = (0x0888396Cu); ctx.gpr[4] = (ctx.gpr[4] + static_cast(14864)); if (rt.invoke_chained_direct<&recomp_unit_0114_entry, 114u, 717u, 0x089CFFB8u>(ctx, &aot_mem) && ctx.pc == 0x0888396Cu) goto L_0888396C; return; L_0888396C: { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[17] + static_cast(29704), ctx.gpr[2]); if (branch_taken) { goto L_0888397C; } goto L_08883974; } L_08883974: ctx.gpr[4] = (0u + static_cast(-1)); aot_mem.aot_store32(ctx.gpr[17] + static_cast(29704), ctx.gpr[4]); goto L_0888397C; L_0888397C: ctx.gpr[4] = (ctx.gpr[16] | 0u); ctx.gpr[5] = (ctx.gpr[18] | 0u); ctx.gpr[31] = (0x0888398Cu); ctx.gpr[6] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0023_entry, 23u, 431u, 0x08862890u>(ctx, &aot_mem) && ctx.pc == 0x0888398Cu) goto L_0888398C; return; L_0888398C: ctx.gpr[2] = (0u | 0u); 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[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_088839A8: 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[17]); ctx.gpr[17] = (2236u << 16u); ctx.gpr[16] = (ctx.gpr[4] | 0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), ctx.gpr[18]); ctx.gpr[18] = (ctx.gpr[17] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[16] + static_cast(16)); ctx.gpr[6] = (0u | 7u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), ctx.gpr[31]); ctx.gpr[31] = (0x088839D8u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x088839D8u) goto L_088839D8; return; L_088839D8: ctx.fpr[0] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(4))); ctx.fpr[18] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(12))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(16))); ctx.fpr[19] = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.fpr[17] = std::bit_cast(std::bit_cast(ctx.fpr[18])); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(20))); ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[16])); ctx.set_fpu_condition((ctx.fpr[14] < ctx.fpr[19])); // nop { const bool branch_taken = !ctx.fpu_condition(); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(24))); if (branch_taken) { goto L_08883A10; } goto L_08883A08; } L_08883A08: ctx.fpr[19] = std::bit_cast(std::bit_cast(ctx.fpr[14])); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[0])); goto L_08883A10; L_08883A10: ctx.set_fpu_condition((ctx.fpr[13] < ctx.fpr[18])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08883A28; } goto L_08883A20; } L_08883A20: ctx.fpr[17] = std::bit_cast(std::bit_cast(ctx.fpr[13])); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[18])); goto L_08883A28; L_08883A28: ctx.set_fpu_condition((ctx.fpr[12] < ctx.fpr[16])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08883A40; } goto L_08883A38; } L_08883A38: ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[16])); goto L_08883A40; L_08883A40: ctx.fpr[16] = std::bit_cast(std::bit_cast(ctx.fpr[15])); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); ctx.fpr[15] = std::bit_cast(std::bit_cast(ctx.fpr[13])); ctx.gpr[17] = (0u | 0u); ctx.fpr[13] = std::bit_cast(std::bit_cast(ctx.fpr[14])); ctx.fpr[18] = std::bit_cast(std::bit_cast(ctx.fpr[12])); ctx.fpr[14] = std::bit_cast(std::bit_cast(ctx.fpr[17])); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[19])); ctx.gpr[31] = (0x08883A68u); ctx.fpr[17] = std::bit_cast(std::bit_cast(ctx.fpr[18])); if (rt.invoke_chained_direct<&recomp_unit_0121_entry, 121u, 248u, 0x089E9438u>(ctx, &aot_mem) && ctx.pc == 0x08883A68u) goto L_08883A68; return; L_08883A68: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08883A74; } goto L_08883A70; } L_08883A70: ctx.gpr[17] = (0u | 1u); goto L_08883A74; L_08883A74: ctx.gpr[4] = (0u < ctx.gpr[17] ? 1u : 0u); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(524))); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[17] = (ctx.gpr[4] ^ ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (0u < ctx.gpr[17] ? 1u : 0u); if (branch_taken) { goto L_08883AA0; } goto L_08883A98; } L_08883A98: { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_08883AE8; } goto L_08883AA0; } L_08883AA0: ctx.gpr[4] = (ctx.gpr[16] + static_cast(518)); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (ctx.gpr[5] + static_cast(-1)); aot_mem.aot_store16(ctx.gpr[4] + static_cast(0), static_cast(ctx.gpr[6])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(521))); ctx.gpr[5] = (static_cast(ctx.gpr[5]) < 9 ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); if (branch_taken) { goto L_08883ACC; } goto L_08883AC0; } L_08883AC0: ctx.gpr[4] = (ctx.gpr[17] & ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); if (branch_taken) { goto L_08883AE8; } goto L_08883ACC; } L_08883ACC: ctx.gpr[4] = (ctx.gpr[17] | ctx.gpr[4]); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); ctx.gpr[4] = (static_cast(ctx.gpr[5]) < 21 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883AE8; } goto L_08883AE4; } L_08883AE4: aot_mem.aot_store16(ctx.gpr[16] + static_cast(518), static_cast(0u)); goto L_08883AE8; L_08883AE8: ctx.gpr[2] = (0u | 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[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_08883B04: 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] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08883B24u); ctx.gpr[7] = (ctx.gpr[16] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883B24u) goto L_08883B24; return; L_08883B24: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883B40; } goto L_08883B30; } L_08883B30: ctx.gpr[31] = (0x08883B38u); ctx.gpr[4] = (0u | 1u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 64u, 0x08A90840u>(ctx, &aot_mem) && ctx.pc == 0x08883B38u) goto L_08883B38; return; L_08883B38: { const bool branch_taken = 0u == 0u; // nop if (branch_taken) { goto L_08883B48; } goto L_08883B40; } L_08883B40: ctx.gpr[31] = (0x08883B48u); ctx.gpr[4] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0163_entry, 163u, 64u, 0x08A90840u>(ctx, &aot_mem) && ctx.pc == 0x08883B48u) goto L_08883B48; return; L_08883B48: ctx.gpr[2] = (0u | 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_08883B5C: 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] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08883B7Cu); ctx.gpr[7] = (ctx.gpr[16] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883B7Cu) goto L_08883B7C; return; L_08883B7C: ctx.gpr[31] = (0x08883B84u); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0094_entry, 94u, 838u, 0x0897F3CCu>(ctx, &aot_mem) && ctx.pc == 0x08883B84u) goto L_08883B84; return; L_08883B84: ctx.gpr[2] = (0u | 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_08883B98: 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] = (0x08883BA8u); // nop if (rt.invoke_chained_direct<&recomp_unit_0094_entry, 94u, 897u, 0x0897F774u>(ctx, &aot_mem) && ctx.pc == 0x08883BA8u) goto L_08883BA8; return; L_08883BA8: ctx.gpr[2] = (0u | 0u); 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_08883BB8: 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); 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] = (0x08883BD4u); ctx.gpr[17] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0094_entry, 94u, 904u, 0x0897F7F0u>(ctx, &aot_mem) && ctx.pc == 0x08883BD4u) goto L_08883BD4; return; L_08883BD4: { const bool branch_taken = ctx.gpr[2] == 0u; // nop if (branch_taken) { goto L_08883BE0; } goto L_08883BDC; } L_08883BDC: ctx.gpr[17] = (0u | 1u); goto L_08883BE0; L_08883BE0: ctx.gpr[4] = (0u < ctx.gpr[17] ? 1u : 0u); ctx.gpr[5] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(524))); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[5] = (0u < ctx.gpr[5] ? 1u : 0u); ctx.gpr[17] = (ctx.gpr[4] ^ ctx.gpr[5]); ctx.gpr[4] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); { const bool branch_taken = ctx.gpr[4] != 0u; ctx.gpr[17] = (0u < ctx.gpr[17] ? 1u : 0u); if (branch_taken) { goto L_08883C0C; } goto L_08883C04; } L_08883C04: { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[17])); if (branch_taken) { goto L_08883C54; } goto L_08883C0C; } L_08883C0C: ctx.gpr[4] = (ctx.gpr[16] + static_cast(518)); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[4] + static_cast(0))); ctx.gpr[6] = (ctx.gpr[5] + static_cast(-1)); aot_mem.aot_store16(ctx.gpr[4] + static_cast(0), static_cast(ctx.gpr[6])); ctx.gpr[4] = (aot_mem.aot_load8(ctx.gpr[16] + static_cast(521))); ctx.gpr[5] = (static_cast(ctx.gpr[5]) < 9 ? 1u : 0u); { const bool branch_taken = ctx.gpr[5] == 0u; ctx.gpr[4] = (0u < ctx.gpr[4] ? 1u : 0u); if (branch_taken) { goto L_08883C38; } goto L_08883C2C; } L_08883C2C: ctx.gpr[4] = (ctx.gpr[17] & ctx.gpr[4]); { const bool branch_taken = 0u == 0u; aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); if (branch_taken) { goto L_08883C54; } goto L_08883C38; } L_08883C38: ctx.gpr[4] = (ctx.gpr[17] | ctx.gpr[4]); ctx.gpr[5] = (aot_mem.aot_load16(ctx.gpr[16] + static_cast(518))); aot_mem.aot_store8(ctx.gpr[16] + static_cast(521), static_cast(ctx.gpr[4])); ctx.gpr[4] = (static_cast(ctx.gpr[5]) < 21 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883C54; } goto L_08883C50; } L_08883C50: aot_mem.aot_store16(ctx.gpr[16] + static_cast(518), static_cast(0u)); goto L_08883C54; L_08883C54: ctx.gpr[2] = (0u | 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[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_08883C6C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-64)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), ctx.gpr[31]); ctx.gpr[16] = (2236u << 16u); ctx.gpr[17] = (ctx.gpr[16] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 13u); ctx.gpr[31] = (0x08883C94u); ctx.gpr[7] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883C94u) goto L_08883C94; return; L_08883C94: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(16))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(20))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(24))); ctx.fpr[18] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(28))); ctx.fpr[19] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(32))); ctx.fpr[0] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(36))); ctx.fpr[2] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(40))); ctx.fpr[1] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(44))); ctx.fpr[3] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(48))); ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); 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[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[14])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(12), std::bit_cast(ctx.fpr[15])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), std::bit_cast(ctx.fpr[16])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[17])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), std::bit_cast(ctx.fpr[18])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), std::bit_cast(ctx.fpr[19])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), std::bit_cast(ctx.fpr[0])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), std::bit_cast(ctx.fpr[2])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), std::bit_cast(ctx.fpr[1])); ctx.gpr[4] = (ctx.gpr[4] & 255u); ctx.gpr[6] = (ctx.gpr[29] + static_cast(8)); ctx.gpr[7] = (ctx.gpr[29] + static_cast(16)); ctx.gpr[8] = (ctx.gpr[29] + static_cast(24)); ctx.gpr[9] = (ctx.gpr[29] + static_cast(32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), std::bit_cast(ctx.fpr[3])); ctx.gpr[10] = (ctx.gpr[29] + static_cast(40)); ctx.gpr[31] = (0x08883D18u); ctx.gpr[5] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0206_entry, 206u, 527u, 0x08B3E288u>(ctx, &aot_mem) && ctx.pc == 0x08883D18u) goto L_08883D18; return; L_08883D18: ctx.gpr[2] = (0u | 0u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(48))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(52))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(56))); 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_08883D30: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(16), ctx.gpr[16]); ctx.gpr[16] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), ctx.gpr[17]); ctx.gpr[17] = (ctx.gpr[16] + static_cast(29704)); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 3u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), ctx.gpr[31]); ctx.gpr[31] = (0x08883D58u); ctx.gpr[7] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883D58u) goto L_08883D58; return; L_08883D58: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); 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[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(8), std::bit_cast(ctx.fpr[14])); ctx.gpr[31] = (0x08883D78u); ctx.gpr[4] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0079_entry, 79u, 5u, 0x0894004Cu>(ctx, &aot_mem) && ctx.pc == 0x08883D78u) goto L_08883D78; return; L_08883D78: ctx.gpr[2] = (0u | 0u); 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[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(24))); 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_08883D90: 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] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08883DB0u); ctx.gpr[7] = (ctx.gpr[16] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883DB0u) goto L_08883DB0; return; L_08883DB0: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15972))); ctx.gpr[31] = (0x08883DBCu); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 438u, 0x08B65CC4u>(ctx, &aot_mem) && ctx.pc == 0x08883DBCu) goto L_08883DBC; return; L_08883DBC: ctx.gpr[4] = (static_cast(static_cast(static_cast(aot_mem.aot_load8(ctx.gpr[2] + static_cast(1654)))))); ctx.gpr[4] = (ctx.gpr[4] | 2u); aot_mem.aot_store8(ctx.gpr[2] + static_cast(1654), static_cast(ctx.gpr[4])); ctx.gpr[2] = (0u | 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_08883DDC: 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] = (2236u << 16u); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(4), ctx.gpr[31]); ctx.gpr[31] = (0x08883DFCu); ctx.gpr[7] = (ctx.gpr[16] + static_cast(29704)); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883DFCu) goto L_08883DFC; return; L_08883DFC: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); { const bool branch_taken = ctx.gpr[4] == 0u; // nop if (branch_taken) { goto L_08883E10; } goto L_08883E08; } L_08883E08: { const bool branch_taken = 0u == 0u; aot_mem.aot_store32(ctx.gpr[28] + static_cast(8076), 0u); if (branch_taken) { goto L_08883E18; } goto L_08883E10; } L_08883E10: ctx.gpr[4] = (0u | 1u); aot_mem.aot_store32(ctx.gpr[28] + static_cast(8076), ctx.gpr[4]); goto L_08883E18; L_08883E18: ctx.gpr[2] = (0u | 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_08883E2C: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-96)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(80), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(84), ctx.gpr[17]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(88), ctx.gpr[31]); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[16] = (2236u << 16u); ctx.gpr[17] = (ctx.gpr[16] + static_cast(29704)); ctx.gpr[6] = (0u | 6u); ctx.gpr[31] = (0x08883E54u); ctx.gpr[7] = (ctx.gpr[17] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883E54u) goto L_08883E54; return; L_08883E54: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(29704))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(8))); ctx.fpr[15] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(12))); ctx.fpr[16] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(16))); ctx.fpr[17] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[17] + static_cast(20))); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), std::bit_cast(ctx.fpr[12])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), std::bit_cast(ctx.fpr[13])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), std::bit_cast(ctx.fpr[14])); ctx.gpr[4] = (ctx.gpr[29] + static_cast(32)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), std::bit_cast(ctx.fpr[15])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), std::bit_cast(ctx.fpr[16])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(56), std::bit_cast(ctx.fpr[17])); ctx.gpr[5] = (ctx.gpr[29] + 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); } { 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[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); } { 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[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[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])); } ctx.gpr[31] = (0x08883EC0u); ctx.gpr[4] = (ctx.gpr[29] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0143_entry, 143u, 254u, 0x08A41560u>(ctx, &aot_mem) && ctx.pc == 0x08883EC0u) goto L_08883EC0; return; L_08883EC0: ctx.gpr[2] = (0u | 0u); ctx.gpr[16] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(80))); ctx.gpr[17] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(84))); ctx.gpr[31] = (aot_mem.aot_load32(ctx.gpr[29] + static_cast(88))); jump_target = ctx.gpr[31]; ctx.gpr[29] = (ctx.gpr[29] + static_cast(96)); local_pc = jump_target; if (++local_transfers < 256u) { entry_id = 0u; goto LOCAL_DISPATCH; } ctx.pc = jump_target; return; L_08883ED8: ctx.gpr[29] = (ctx.gpr[29] + static_cast(-64)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(36), ctx.gpr[17]); ctx.gpr[17] = (2236u << 16u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(40), ctx.gpr[18]); ctx.gpr[18] = (ctx.gpr[17] + static_cast(29704)); aot_mem.aot_store32(ctx.gpr[29] + static_cast(24), std::bit_cast(ctx.fpr[20])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(28), std::bit_cast(ctx.fpr[22])); aot_mem.aot_store32(ctx.gpr[29] + static_cast(32), ctx.gpr[16]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(44), ctx.gpr[20]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(48), ctx.gpr[21]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(52), ctx.gpr[31]); ctx.gpr[5] = (ctx.gpr[4] + static_cast(16)); ctx.gpr[6] = (0u | 3u); ctx.gpr[31] = (0x08883F14u); ctx.gpr[7] = (ctx.gpr[18] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0024_entry, 24u, 371u, 0x0886589Cu>(ctx, &aot_mem) && ctx.pc == 0x08883F14u) goto L_08883F14; return; L_08883F14: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-15960))); ctx.gpr[31] = (0x08883F20u); ctx.gpr[5] = (aot_mem.aot_load32(ctx.gpr[17] + static_cast(29704))); if (rt.invoke_chained_direct<&recomp_unit_0216_entry, 216u, 445u, 0x08B65D28u>(ctx, &aot_mem) && ctx.pc == 0x08883F20u) goto L_08883F20; return; L_08883F20: ctx.gpr[17] = (ctx.gpr[2] | 0u); ctx.gpr[16] = (ctx.gpr[17] + static_cast(48)); { 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<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[22] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[18] + static_cast(4))); aot_mem.aot_store8(ctx.gpr[29] + static_cast(16), static_cast(0u)); ctx.gpr[4] = (50298u << 16u); ctx.fpr[12] = std::bit_cast(ctx.gpr[4]); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[12])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[31] = (0x08883F58u); ctx.gpr[4] = (ctx.gpr[29] + static_cast(16)); if (rt.invoke_chained_direct<&recomp_unit_0035_entry, 35u, 519u, 0x08893460u>(ctx, &aot_mem) && ctx.pc == 0x08883F58u) goto L_08883F58; return; L_08883F58: ctx.fpr[20] = std::bit_cast(std::bit_cast(ctx.fpr[0])); ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(0))); ctx.fpr[13] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(4))); ctx.fpr[14] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(8))); ctx.gpr[4] = (ctx.gpr[29] + static_cast(20)); ctx.gpr[31] = (0x08883F74u); ctx.gpr[5] = (0u | 0u); if (rt.invoke_chained_direct<&recomp_unit_0189_entry, 189u, 115u, 0x08AF8668u>(ctx, &aot_mem) && ctx.pc == 0x08883F74u) goto L_08883F74; return; L_08883F74: { const bool branch_taken = ctx.gpr[2] != 0u; // nop if (branch_taken) { goto L_08883F84; } goto L_08883F7C; } L_08883F7C: ctx.fpr[12] = std::bit_cast(0u); aot_mem.aot_store32(ctx.gpr[29] + static_cast(20), std::bit_cast(ctx.fpr[12])); goto L_08883F84; L_08883F84: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); ctx.set_fpu_condition((ctx.fpr[20] < ctx.fpr[12])); // nop { const bool branch_taken = !ctx.fpu_condition(); // nop if (branch_taken) { goto L_08883F9C; } goto L_08883F98; } L_08883F98: ctx.fpr[20] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[29] + static_cast(20))); goto L_08883F9C; L_08883F9C: ctx.gpr[4] = (aot_mem.aot_load32(ctx.gpr[18] + static_cast(8))); ctx.gpr[4] = (static_cast(ctx.gpr[4]) < 9 ? 1u : 0u); { const bool branch_taken = ctx.gpr[4] != 0u; // nop if (branch_taken) { goto L_08883FB4; } goto L_08883FAC; } L_08883FAC: ctx.gpr[4] = (0u | 8u); aot_mem.aot_store32(ctx.gpr[18] + static_cast(8), ctx.gpr[4]); goto L_08883FB4; L_08883FB4: ctx.gpr[31] = (0x08883FBCu); ctx.fpr[12] = std::bit_cast(std::bit_cast(ctx.fpr[22])); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 341u, 0x08B61B60u>(ctx, &aot_mem) && ctx.pc == 0x08883FBCu) goto L_08883FBC; return; L_08883FBC: ctx.fpr[12] = std::bit_cast(aot_mem.aot_load32(ctx.gpr[16] + static_cast(8))); ctx.gpr[4] = (16256u << 16u); ctx.fpr[12] = ctx.fpr[12] - ctx.fpr[20]; ctx.gpr[21] = (ctx.gpr[3] | 0u); ctx.fpr[13] = std::bit_cast(ctx.gpr[4]); ctx.gpr[20] = (ctx.gpr[2] | 0u); ctx.fpr[12] = ctx.fpr[12] - ctx.fpr[13]; ctx.gpr[31] = (0x08883FE0u); ctx.fpr[12] = ctx.fpr[12] - ctx.fpr[22]; if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 341u, 0x08B61B60u>(ctx, &aot_mem) && ctx.pc == 0x08883FE0u) goto L_08883FE0; return; L_08883FE0: ctx.gpr[7] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26236))); ctx.gpr[6] = (aot_mem.aot_load32(ctx.gpr[28] + static_cast(-26240))); ctx.gpr[5] = (ctx.gpr[3] | 0u); ctx.gpr[31] = (0x08883FF4u); ctx.gpr[4] = (ctx.gpr[2] | 0u); if (rt.invoke_chained_direct<&recomp_unit_0215_entry, 215u, 400u, 0x08B61FD0u>(ctx, &aot_mem) && ctx.pc == 0x08883FF4u) goto L_08883FF4; return; L_08883FF4: ctx.gpr[5] = (ctx.gpr[21] | 0u); ctx.gpr[4] = (ctx.gpr[20] | 0u); ctx.gpr[7] = (ctx.gpr[3] | 0u); ctx.pc = 0x08884000u; return; } void recomp_unit_0031(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0031_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_31(Runtime &runtime) { runtime.register_generated_unit(31u, 0x08880000u, 16384u, &recomp_unit_0031, &recomp_unit_0031_entry); runtime.register_function(0x08880000u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888002Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880040u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888004Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880064u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880078u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880090u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088800E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088800ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088800F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880108u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880118u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888012Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880130u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880148u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880154u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880160u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880194u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088801A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880218u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888021Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880228u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880234u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888023Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880270u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880298u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088802BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088802E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088802F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880320u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880328u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880344u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888043Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880454u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880464u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880494u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088804C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088804D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088804E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880500u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880564u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880570u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088805A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088805B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088805C0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088805C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088805F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880630u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880644u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880658u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888067Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880684u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880690u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088806B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088806BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088806C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088806ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088806F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880738u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880744u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880754u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888075Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880768u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880770u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880784u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088807A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088807D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088807E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088807F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880804u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888081Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880838u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880844u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880854u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888085Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888087Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880888u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888088Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888089Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088808D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088808E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088808E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088808F4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880900u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880908u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888091Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880938u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880958u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880960u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880970u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880980u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880984u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888098Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880994u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088809F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880A90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880AACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880ACCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880AD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880AF4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880AFCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B40u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B4Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B60u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880B90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BA4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BC4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880BECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C00u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880C8Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880CACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880CB4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880CC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880CE4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880CF8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D00u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D04u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D0Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D5Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D68u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D70u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D7Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880D98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880DA4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880DB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880DC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880DD0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E4Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E78u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880E94u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EB4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EDCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880EF8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F0Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F20u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F78u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F8Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880F9Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FB4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FE8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08880FF4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881020u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881028u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881038u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881070u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881080u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088810CCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088810D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088810F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881104u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888110Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881110u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881118u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888111Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881124u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881128u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881140u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888114Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881160u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881168u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881178u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088811C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088811E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088811ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088811F4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881210u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881220u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888122Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881274u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088812F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888134Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088813FCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881410u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881418u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881420u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888142Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881454u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888149Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814B8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814C0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088814FCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881510u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881518u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881524u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888152Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881540u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888154Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881560u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088815C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088815D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088815D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088815ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881780u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881798u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088817A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088817D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088817E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088817F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088817F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881838u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818CCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088818F4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888190Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881914u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881920u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888192Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888193Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881944u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888195Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881968u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881974u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881984u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888198Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088819B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088819C0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088819CCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088819E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088819E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881A80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881A8Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881A98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881AACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881AB4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881B80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881B8Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881B98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BF0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881BF8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C4Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C5Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881C80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881CA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881CC4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881CD0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881D60u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881D80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881D9Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881DA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881DC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881DC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881DFCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E20u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E50u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881E8Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881EB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881EB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881EDCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881EE4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881EF0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F34u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F3Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F44u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F6Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881F98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881FA4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881FACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881FC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08881FD8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882080u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820A0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088820F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882108u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882114u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882134u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888214Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882164u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888217Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882188u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088821D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088821F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882218u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882238u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882248u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882250u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888225Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882274u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088822C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882308u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882340u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882350u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888236Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888237Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088823BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088823D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088823DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088823ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088823F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882418u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882420u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882428u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882438u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888245Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882464u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882484u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882488u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882490u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088824A0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088824A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088824B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088824DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882504u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888250Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882514u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888251Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882524u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888252Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888253Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882564u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888256Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888257Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882598u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088825D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088825E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888260Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882614u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882624u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882630u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882640u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888264Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888265Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888266Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882674u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882680u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826A0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088826E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882704u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882720u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882730u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882744u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888274Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882760u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882770u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882778u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882788u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882790u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827B8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088827FCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882810u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888281Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882824u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882834u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888283Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882850u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882858u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888285Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882864u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888287Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882884u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882894u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088828A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088828B8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088828BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088828C0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088828E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882930u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882948u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882954u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888295Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882968u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882978u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882980u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882988u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882990u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088829F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882A30u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882A38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882A40u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882A50u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882A7Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AA4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AD8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AF4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882AFCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B04u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B1Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B30u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B44u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B4Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B60u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B68u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882B94u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BD8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BE4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882BF8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C00u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C0Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C40u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C60u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C78u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C80u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C88u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882C9Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CC4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CCCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CE4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882CF0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D00u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D20u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D28u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D50u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D60u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D6Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D7Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882D9Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DC8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DF4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882DFCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E0Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E1Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E30u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E44u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E64u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882E94u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EA4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EC4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882EF4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F00u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F3Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F68u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882F90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882FB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882FBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882FC4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882FD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08882FE8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883000u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883018u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883024u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888302Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888303Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883048u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883054u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888305Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883064u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883074u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888307Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883084u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888308Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883094u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830F4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088830FCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888310Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883114u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883120u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883128u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883130u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888313Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883144u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888314Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883154u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888315Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883168u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883170u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883184u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831A0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831C0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831E4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088831ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883200u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883218u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883230u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883240u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883248u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883258u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883278u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088832C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088832DCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088832F4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883304u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883310u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883318u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883328u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883338u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883340u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883360u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883374u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883384u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883398u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833A4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088833F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883408u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888340Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883418u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888342Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883434u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883448u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888345Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883464u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883470u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883480u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883488u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888349Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088834E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888350Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883534u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883570u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883588u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835D0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835E0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088835F8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883638u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883658u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883670u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888367Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883680u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088836B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088836C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088836ECu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883714u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883730u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883738u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888373Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883760u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883768u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883788u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883794u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088837ACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088837B0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088837C8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088837E8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883800u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883814u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883828u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883838u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883868u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883874u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883890u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088838B4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088838BCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088838C4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088838D4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088838F0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883920u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888392Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883948u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888396Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883974u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888397Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x0888398Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088839A8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x088839D8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A20u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A28u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A40u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A68u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A70u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883A98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883AA0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883AC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883ACCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883AE4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883AE8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B04u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B24u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B30u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B40u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B48u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B5Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B7Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883B98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883BA8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883BB8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883BD4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883BDCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883BE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C04u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C0Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C38u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C50u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C6Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883C94u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883D18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883D30u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883D58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883D78u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883D90u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883DB0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883DBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883DDCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883DFCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883E08u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883E10u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883E18u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883E2Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883E54u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883EC0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883ED8u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F14u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F20u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F58u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F74u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F7Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F84u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F98u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883F9Cu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883FACu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883FB4u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883FBCu, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883FE0u, &recomp_unit_0031, "recomp_unit_0031"); runtime.register_function(0x08883FF4u, &recomp_unit_0031, "recomp_unit_0031"); } } // namespace psprecomp