duckstation

duckstation, but archived from the revision just before upstream changed it to a proprietary software project, this version is the libre one
git clone https://git.neptards.moe/u3shit/duckstation.git
Log | Files | Refs | README | LICENSE

RegisterClassLookup.inc (1488B)


      1 static const ZydisRegisterClassLookupItem REG_CLASS_LOOKUP[] =
      2 {
      3     /* INVALID */ { ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, 0, 0 },
      4     /* GPR8    */ { ZYDIS_REGISTER_AL, ZYDIS_REGISTER_R15B, 8, 8 },
      5     /* GPR16   */ { ZYDIS_REGISTER_AX, ZYDIS_REGISTER_R15W, 16, 16 },
      6     /* GPR32   */ { ZYDIS_REGISTER_EAX, ZYDIS_REGISTER_R15D, 32, 32 },
      7     /* GPR64   */ { ZYDIS_REGISTER_RAX, ZYDIS_REGISTER_R15, 0, 64 },
      8     /* X87     */ { ZYDIS_REGISTER_ST0, ZYDIS_REGISTER_ST7, 80, 80 },
      9     /* MMX     */ { ZYDIS_REGISTER_MM0, ZYDIS_REGISTER_MM7, 64, 64 },
     10     /* XMM     */ { ZYDIS_REGISTER_XMM0, ZYDIS_REGISTER_XMM31, 128, 128 },
     11     /* YMM     */ { ZYDIS_REGISTER_YMM0, ZYDIS_REGISTER_YMM31, 256, 256 },
     12     /* ZMM     */ { ZYDIS_REGISTER_ZMM0, ZYDIS_REGISTER_ZMM31, 512, 512 },
     13     /* TMM     */ { ZYDIS_REGISTER_TMM0, ZYDIS_REGISTER_TMM7, 8192, 8192 },
     14     /* FLAGS   */ { ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, 0, 0 },
     15     /* IP      */ { ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, 0, 0 },
     16     /* SEGMENT */ { ZYDIS_REGISTER_ES, ZYDIS_REGISTER_GS, 16, 16 },
     17     /* TABLE   */ { ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, 0, 0 },
     18     /* TEST    */ { ZYDIS_REGISTER_TR0, ZYDIS_REGISTER_TR7, 32, 32 },
     19     /* CONTROL */ { ZYDIS_REGISTER_CR0, ZYDIS_REGISTER_CR15, 32, 64 },
     20     /* DEBUG   */ { ZYDIS_REGISTER_DR0, ZYDIS_REGISTER_DR15, 32, 64 },
     21     /* MASK    */ { ZYDIS_REGISTER_K0, ZYDIS_REGISTER_K7, 64, 64 },
     22     /* BOUND   */ { ZYDIS_REGISTER_BND0, ZYDIS_REGISTER_BND3, 128, 128 }
     23 };