#include "psprecomp/runtime.hpp" #include "generated_units.hpp" #include #include #include #include namespace psprecomp { static const std::uint16_t kEntryIds_recomp_unit_0211[3952] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 10, 0, 0, 0, 11, 0, 0, 12, 0, 13, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, }; void recomp_unit_0211_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 - 0x08B50000u; entry_id = (entry_delta < 15808u && (entry_delta & 3u) == 0u) ? kEntryIds_recomp_unit_0211[entry_delta >> 2u] : 0u; } switch (entry_id) { case 1u: goto L_08B50000; case 2u: goto L_08B50BA0; case 3u: goto L_08B50E78; case 4u: goto L_08B51354; case 5u: goto L_08B513A8; case 6u: goto L_08B51F54; case 7u: goto L_08B523D8; case 8u: goto L_08B528D8; case 9u: goto L_08B52B00; case 10u: goto L_08B52B10; case 11u: goto L_08B52B20; case 12u: goto L_08B52B2C; case 13u: goto L_08B52B34; case 14u: goto L_08B52B3C; case 15u: goto L_08B52B78; case 16u: goto L_08B52BE4; case 17u: goto L_08B52BE8; case 18u: goto L_08B52C80; case 19u: goto L_08B53AFC; case 20u: goto L_08B53DBC; default: if (local_transfers == 0u) rt.unsupported(ctx.pc, 0u, "invalid internal function entry"); else ctx.pc = local_pc; return; } } L_08B50000: { const std::uint64_t product = static_cast(0u) * static_cast(0u); ctx.lo = static_cast(product); ctx.hi = static_cast(product >> 32u); } { const std::int32_t dividend = static_cast(0u); ctx.lo = dividend >= 0 ? 0xFFFFFFFFu : 1u; ctx.hi = static_cast(dividend); } ctx.pc = 0x02C8F380u; (void)rt.invoke_chained_call(ctx, &aot_mem); return; L_08B50BA0: ctx.gpr[1] = (0u >> (0u & 31u)); ctx.gpr[1] = (static_cast(static_cast(0u) >> (0u & 31u))); ctx.pc = 0x02C92200u; (void)rt.invoke_chained_call(ctx, &aot_mem); return; L_08B50E78: rt.unsupported(0x08B50E78u, 0x00001439u, "special? not lowered yet"); return; L_08B51354: rt.unsupported(0x08B51358u, 0x000014F3u, "special? not lowered yet"); return; ctx.pc = 0x02C940C0u; (void)rt.invoke_chained_call(ctx, &aot_mem); return; L_08B513A8: ctx.gpr[2] = (0u >> (0u & 31u)); ctx.gpr[2] = (static_cast(static_cast(0u) >> (0u & 31u))); ctx.pc = 0x02C94220u; (void)rt.invoke_chained_call(ctx, &aot_mem); return; L_08B51F54: (void)(static_cast(std::countl_zero(0u))); rt.unsupported(0x08B51F58u, 0x00000005u, "special? not lowered yet"); return; L_08B523D8: rt.unsupported(0x08B523D8u, 0x00000032u, "special? not lowered yet"); return; L_08B528D8: rt.unsupported(0x08B528D8u, 0x0000003Bu, "special? not lowered yet"); return; L_08B52B00: // nop // nop // nop // nop goto L_08B52B10; L_08B52B10: // nop // nop // nop // nop goto L_08B52B20; L_08B52B20: // nop { const bool signed_ok = ctx.execute_signed_sub(10u, 0u, 0u); if (!signed_ok) { rt.arithmetic_overflow(0x08B52B24u, 0x00005622u); return; } } // nop goto L_08B52B2C; L_08B52B2C: rt.unsupported(0x08B52B2Cu, 0x00000001u, "special? not lowered yet"); return; L_08B52B34: rt.unsupported(0x08B52B34u, 0x00000001u, "special? not lowered yet"); return; L_08B52B3C: rt.unsupported(0x08B52B3Cu, 0x0000161Eu, "special? not lowered yet"); return; L_08B52B78: rt.unsupported(0x08B52B78u, 0x00001770u, "special? not lowered yet"); return; L_08B52BE4: // nop goto L_08B52BE8; L_08B52BE8: // nop // nop rt.unsupported(0x08B52BF0u, 0x40666666u, "unknown not lowered yet"); return; L_08B52C80: // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop goto L_08B53AFC; L_08B53AFC: // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop goto L_08B53DBC; L_08B53DBC: // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop // nop ctx.pc = 0x08B54000u; return; } void recomp_unit_0211(Runtime &rt, AllegrexContext &ctx) { auto aot_mem = rt.memory().aot_fast_view(); recomp_unit_0211_entry(rt, ctx, 0u, aot_mem); } void register_generated_unit_211(Runtime &runtime) { runtime.register_generated_unit(211u, 0x08B50000u, 16384u, &recomp_unit_0211, &recomp_unit_0211_entry); runtime.register_function(0x08B50000u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B50BA0u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B50E78u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B51354u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B513A8u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B51F54u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B523D8u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B528D8u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B00u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B10u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B20u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B2Cu, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B34u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B3Cu, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52B78u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52BE4u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52BE8u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B52C80u, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B53AFCu, &recomp_unit_0211, "recomp_unit_0211"); runtime.register_function(0x08B53DBCu, &recomp_unit_0211, "recomp_unit_0211"); } } // namespace psprecomp