Added compressed disp8 calculation for MVEX instructions with element-granularity

This commit is contained in:
flobernd 2017-06-23 01:40:19 +02:00
parent d8f3843f57
commit 2297c763cf
3 changed files with 442 additions and 425 deletions

View File

@ -6509,411 +6509,411 @@ const ZydisInstructionDefinitionEVEX instructionDefinitionsEVEX[] =
const ZydisInstructionDefinitionMVEX instructionDefinitionsMVEX[] = const ZydisInstructionDefinitionMVEX instructionDefinitionsMVEX[] =
{ {
/*0000*/ { ZYDIS_MNEMONIC_CLEVICT0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0000*/ { ZYDIS_MNEMONIC_CLEVICT0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0001*/ { ZYDIS_MNEMONIC_CLEVICT1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0001*/ { ZYDIS_MNEMONIC_CLEVICT1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0002*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0002*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0003*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0003*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0004*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0004*/ { ZYDIS_MNEMONIC_VADDNPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0005*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0005*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0006*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0006*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0007*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0007*/ { ZYDIS_MNEMONIC_VADDNPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0008*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0008*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0009*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0009*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000A*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*000A*/ { ZYDIS_MNEMONIC_VADDPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000B*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*000B*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000C*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*000C*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000D*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*000D*/ { ZYDIS_MNEMONIC_VADDPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000E*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*000E*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*000F*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*000F*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0010*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x0890, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0010*/ { ZYDIS_MNEMONIC_VADDSETSPS, 4, 0x0890, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0011*/ { ZYDIS_MNEMONIC_VALIGND, 5, 0x0396, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0011*/ { ZYDIS_MNEMONIC_VALIGND, 5, 0x0396, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0012*/ { ZYDIS_MNEMONIC_VALIGND, 5, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0012*/ { ZYDIS_MNEMONIC_VALIGND, 5, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0013*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0013*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0014*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0014*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0015*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0015*/ { ZYDIS_MNEMONIC_VBLENDMPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0016*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0016*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0017*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0017*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0018*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0018*/ { ZYDIS_MNEMONIC_VBLENDMPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0019*/ { ZYDIS_MNEMONIC_VBROADCASTF32X4, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0019*/ { ZYDIS_MNEMONIC_VBROADCASTF32X4, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001A*/ { ZYDIS_MNEMONIC_VBROADCASTF64X4, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*001A*/ { ZYDIS_MNEMONIC_VBROADCASTF64X4, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001B*/ { ZYDIS_MNEMONIC_VBROADCASTI32X4, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*001B*/ { ZYDIS_MNEMONIC_VBROADCASTI32X4, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001C*/ { ZYDIS_MNEMONIC_VBROADCASTI64X4, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*001C*/ { ZYDIS_MNEMONIC_VBROADCASTI64X4, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001D*/ { ZYDIS_MNEMONIC_VBROADCASTSD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*001D*/ { ZYDIS_MNEMONIC_VBROADCASTSD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001E*/ { ZYDIS_MNEMONIC_VBROADCASTSS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*001E*/ { ZYDIS_MNEMONIC_VBROADCASTSS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*001F*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A0, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*001F*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A0, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0020*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A5, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0020*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A5, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0021*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A5, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0021*/ { ZYDIS_MNEMONIC_VCMPPD, 5, 0x03A5, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0022*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AA, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0022*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AA, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0023*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AF, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0023*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AF, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0024*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AF, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0024*/ { ZYDIS_MNEMONIC_VCMPPS, 5, 0x03AF, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0025*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST, ZYDIS_MASK_POLICY_ALLOWED }, /*0025*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0026*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0026*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0027*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0027*/ { ZYDIS_MNEMONIC_VCVTDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0028*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0028*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0029*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0898, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0029*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0898, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002A*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0898, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*002A*/ { ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS, 4, 0x0898, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002B*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x089C, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*002B*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x089C, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002C*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x08A0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*002C*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x08A0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002D*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x08A0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*002D*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ, 4, 0x08A0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002E*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A4, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*002E*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A4, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*002F*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A8, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*002F*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A8, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0030*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0030*/ { ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ, 4, 0x08A8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0031*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x089C, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0031*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x089C, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0032*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x08AC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0032*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x08AC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0033*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x08AC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0033*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ, 4, 0x08AC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0034*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08A4, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0034*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08A4, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0035*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08B0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0035*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08B0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0036*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08B0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0036*/ { ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ, 4, 0x08B0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0037*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0037*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0038*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x08B4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0038*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x08B4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0039*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x08B4, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0039*/ { ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS, 4, 0x08B4, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003A*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*003A*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003B*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x11B7, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*003B*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x11B7, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003C*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x11B7, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*003C*/ { ZYDIS_MNEMONIC_VCVTPD2PS, 3, 0x11B7, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003D*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_32_BCST, ZYDIS_MASK_POLICY_ALLOWED }, /*003D*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_32_BCST, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003E*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*003E*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*003F*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*003F*/ { ZYDIS_MNEMONIC_VCVTPS2PD, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0040*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST, ZYDIS_MASK_POLICY_ALLOWED }, /*0040*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0041*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0041*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0042*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0042*/ { ZYDIS_MNEMONIC_VCVTUDQ2PD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0043*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0043*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0044*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0044*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0045*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0045*/ { ZYDIS_MNEMONIC_VEXP223PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0046*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0046*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0047*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0047*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0048*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0048*/ { ZYDIS_MNEMONIC_VFIXUPNANPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0049*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0049*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004A*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*004A*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004B*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*004B*/ { ZYDIS_MNEMONIC_VFIXUPNANPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004C*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*004C*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004D*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*004D*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004E*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*004E*/ { ZYDIS_MNEMONIC_VFMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*004F*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*004F*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0050*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0050*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0051*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0051*/ { ZYDIS_MNEMONIC_VFMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0052*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0052*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0053*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0053*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0054*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0054*/ { ZYDIS_MNEMONIC_VFMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0055*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0055*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0056*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0056*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0057*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0057*/ { ZYDIS_MNEMONIC_VFMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0058*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0058*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0059*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0059*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005A*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*005A*/ { ZYDIS_MNEMONIC_VFMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005B*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*005B*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005C*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*005C*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005D*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*005D*/ { ZYDIS_MNEMONIC_VFMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005E*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16, ZYDIS_MASK_POLICY_ALLOWED }, /*005E*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*005F*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*005F*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0060*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0060*/ { ZYDIS_MNEMONIC_VFMADD233PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0061*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0061*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0062*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0062*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0063*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0063*/ { ZYDIS_MNEMONIC_VFMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0064*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0064*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0065*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0065*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0066*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0066*/ { ZYDIS_MNEMONIC_VFMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0067*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0067*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0068*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0068*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0069*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0069*/ { ZYDIS_MNEMONIC_VFMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006A*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*006A*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006B*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*006B*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006C*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*006C*/ { ZYDIS_MNEMONIC_VFMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006D*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*006D*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006E*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*006E*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*006F*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*006F*/ { ZYDIS_MNEMONIC_VFMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0070*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0070*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0071*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0071*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0072*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0072*/ { ZYDIS_MNEMONIC_VFMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0073*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0073*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0074*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0074*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0075*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0075*/ { ZYDIS_MNEMONIC_VFNMADD132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0076*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0076*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0077*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0077*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0078*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0078*/ { ZYDIS_MNEMONIC_VFNMADD132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0079*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0079*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007A*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*007A*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007B*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*007B*/ { ZYDIS_MNEMONIC_VFNMADD213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007C*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*007C*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007D*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*007D*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007E*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*007E*/ { ZYDIS_MNEMONIC_VFNMADD213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*007F*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*007F*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0080*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0080*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0081*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0081*/ { ZYDIS_MNEMONIC_VFNMADD231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0082*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0082*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0083*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0083*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0084*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0084*/ { ZYDIS_MNEMONIC_VFNMADD231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0085*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0085*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0086*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0086*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0087*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0087*/ { ZYDIS_MNEMONIC_VFNMSUB132PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0088*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0088*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0089*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0089*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008A*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*008A*/ { ZYDIS_MNEMONIC_VFNMSUB132PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008B*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*008B*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008C*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*008C*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008D*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*008D*/ { ZYDIS_MNEMONIC_VFNMSUB213PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008E*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*008E*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*008F*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*008F*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0090*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0090*/ { ZYDIS_MNEMONIC_VFNMSUB213PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0091*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0091*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0092*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0092*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0093*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0093*/ { ZYDIS_MNEMONIC_VFNMSUB231PD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0094*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0094*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0095*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0095*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0096*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0096*/ { ZYDIS_MNEMONIC_VFNMSUB231PS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0097*/ { ZYDIS_MNEMONIC_VGATHERDPD, 3, 0x11BD, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0097*/ { ZYDIS_MNEMONIC_VGATHERDPD, 3, 0x11BD, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0098*/ { ZYDIS_MNEMONIC_VGATHERDPS, 3, 0x11C0, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0098*/ { ZYDIS_MNEMONIC_VGATHERDPS, 3, 0x11C0, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0099*/ { ZYDIS_MNEMONIC_VGATHERPF0DPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0099*/ { ZYDIS_MNEMONIC_VGATHERPF0DPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009A*/ { ZYDIS_MNEMONIC_VGATHERPF0HINTDPD, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*009A*/ { ZYDIS_MNEMONIC_VGATHERPF0HINTDPD, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009B*/ { ZYDIS_MNEMONIC_VGATHERPF0HINTDPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*009B*/ { ZYDIS_MNEMONIC_VGATHERPF0HINTDPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009C*/ { ZYDIS_MNEMONIC_VGATHERPF1DPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*009C*/ { ZYDIS_MNEMONIC_VGATHERPF1DPS, 2, 0x16C8, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009D*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*009D*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009E*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*009E*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*009F*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*009F*/ { ZYDIS_MNEMONIC_VGETEXPPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A0*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00A0*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A1*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00A1*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A2*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00A2*/ { ZYDIS_MNEMONIC_VGETEXPPS, 3, 0x11BA, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A3*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00A3*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A4*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00A4*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A5*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00A5*/ { ZYDIS_MNEMONIC_VGETMANTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A6*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00A6*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A7*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00A7*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A8*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00A8*/ { ZYDIS_MNEMONIC_VGETMANTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00A9*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00A9*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AA*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00AA*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AB*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00AB*/ { ZYDIS_MNEMONIC_VGMAXABSPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AC*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00AC*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AD*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00AD*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AE*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00AE*/ { ZYDIS_MNEMONIC_VGMAXPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00AF*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00AF*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B0*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00B0*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B1*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*00B1*/ { ZYDIS_MNEMONIC_VGMAXPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B2*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00B2*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B3*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00B3*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B4*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00B4*/ { ZYDIS_MNEMONIC_VGMINPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B5*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00B5*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B6*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00B6*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B7*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*00B7*/ { ZYDIS_MNEMONIC_VGMINPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00B8*/ { ZYDIS_MNEMONIC_VLOADUNPACKHD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00B8*/ { ZYDIS_MNEMONIC_VLOADUNPACKHD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00B9*/ { ZYDIS_MNEMONIC_VLOADUNPACKHPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00B9*/ { ZYDIS_MNEMONIC_VLOADUNPACKHPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BA*/ { ZYDIS_MNEMONIC_VLOADUNPACKHPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00BA*/ { ZYDIS_MNEMONIC_VLOADUNPACKHPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BB*/ { ZYDIS_MNEMONIC_VLOADUNPACKHQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00BB*/ { ZYDIS_MNEMONIC_VLOADUNPACKHQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BC*/ { ZYDIS_MNEMONIC_VLOADUNPACKLD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00BC*/ { ZYDIS_MNEMONIC_VLOADUNPACKLD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BD*/ { ZYDIS_MNEMONIC_VLOADUNPACKLPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00BD*/ { ZYDIS_MNEMONIC_VLOADUNPACKLPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BE*/ { ZYDIS_MNEMONIC_VLOADUNPACKLPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00BE*/ { ZYDIS_MNEMONIC_VLOADUNPACKLPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00BF*/ { ZYDIS_MNEMONIC_VLOADUNPACKLQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00BF*/ { ZYDIS_MNEMONIC_VLOADUNPACKLQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00C0*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00C0*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C1*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*00C1*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C2*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00C2*/ { ZYDIS_MNEMONIC_VLOG2PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C3*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00C3*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C4*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00C4*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C5*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00C5*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C6*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x11C3, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00C6*/ { ZYDIS_MNEMONIC_VMOVAPD, 3, 0x11C3, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C7*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00C7*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x0894, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C8*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00C8*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00C9*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00C9*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CA*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00CA*/ { ZYDIS_MNEMONIC_VMOVAPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CB*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00CB*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CC*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00CC*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CD*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00CD*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CE*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00CE*/ { ZYDIS_MNEMONIC_VMOVDQA32, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00CF*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00CF*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D0*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D0*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D1*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00D1*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CC, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D2*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CF, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D2*/ { ZYDIS_MNEMONIC_VMOVDQA64, 3, 0x11CF, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D3*/ { ZYDIS_MNEMONIC_VMOVNRAPD, 3, 0x11D2, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D3*/ { ZYDIS_MNEMONIC_VMOVNRAPD, 3, 0x11D2, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D4*/ { ZYDIS_MNEMONIC_VMOVNRAPS, 3, 0x11D5, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00D4*/ { ZYDIS_MNEMONIC_VMOVNRAPS, 3, 0x11D5, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D5*/ { ZYDIS_MNEMONIC_VMOVNRNGOAPD, 3, 0x11D2, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D5*/ { ZYDIS_MNEMONIC_VMOVNRNGOAPD, 3, 0x11D2, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D6*/ { ZYDIS_MNEMONIC_VMOVNRNGOAPS, 3, 0x11D5, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00D6*/ { ZYDIS_MNEMONIC_VMOVNRNGOAPS, 3, 0x11D5, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D7*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D7*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D8*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00D8*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00D9*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*00D9*/ { ZYDIS_MNEMONIC_VMULPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00DA*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00DA*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00DB*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00DB*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00DC*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*00DC*/ { ZYDIS_MNEMONIC_VMULPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00DD*/ { ZYDIS_MNEMONIC_VPACKSTOREHD, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00DD*/ { ZYDIS_MNEMONIC_VPACKSTOREHD, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00DE*/ { ZYDIS_MNEMONIC_VPACKSTOREHPD, 3, 0x11D8, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00DE*/ { ZYDIS_MNEMONIC_VPACKSTOREHPD, 3, 0x11D8, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00DF*/ { ZYDIS_MNEMONIC_VPACKSTOREHPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00DF*/ { ZYDIS_MNEMONIC_VPACKSTOREHPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E0*/ { ZYDIS_MNEMONIC_VPACKSTOREHQ, 3, 0x11DB, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00E0*/ { ZYDIS_MNEMONIC_VPACKSTOREHQ, 3, 0x11DB, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E1*/ { ZYDIS_MNEMONIC_VPACKSTORELD, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E1*/ { ZYDIS_MNEMONIC_VPACKSTORELD, 3, 0x11C9, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E2*/ { ZYDIS_MNEMONIC_VPACKSTORELPD, 3, 0x11D8, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00E2*/ { ZYDIS_MNEMONIC_VPACKSTORELPD, 3, 0x11D8, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E3*/ { ZYDIS_MNEMONIC_VPACKSTORELPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E3*/ { ZYDIS_MNEMONIC_VPACKSTORELPS, 3, 0x11C6, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E4*/ { ZYDIS_MNEMONIC_VPACKSTORELQ, 3, 0x11DB, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00E4*/ { ZYDIS_MNEMONIC_VPACKSTORELQ, 3, 0x11DB, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_TRUE },
/*00E5*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E5*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00E6*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E6*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00E7*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00E7*/ { ZYDIS_MNEMONIC_VPADCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00E8*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E8*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00E9*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00E9*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00EA*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00EA*/ { ZYDIS_MNEMONIC_VPADDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00EB*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00EB*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00EC*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00EC*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00ED*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00ED*/ { ZYDIS_MNEMONIC_VPADDSETCD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00EE*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x0890, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00EE*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x0890, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00EF*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00EF*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F0*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00F0*/ { ZYDIS_MNEMONIC_VPADDSETSD, 4, 0x088C, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F1*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00F1*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F2*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00F2*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F3*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00F3*/ { ZYDIS_MNEMONIC_VPANDD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F4*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00F4*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F5*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00F5*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F6*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00F6*/ { ZYDIS_MNEMONIC_VPANDND, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F7*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00F7*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F8*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00F8*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00F9*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00F9*/ { ZYDIS_MNEMONIC_VPANDNQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FA*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00FA*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FB*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*00FB*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FC*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00FC*/ { ZYDIS_MNEMONIC_VPANDQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FD*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00FD*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FE*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*00FE*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*00FF*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*00FF*/ { ZYDIS_MNEMONIC_VPBLENDMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0100*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0100*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0101*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0101*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0102*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0102*/ { ZYDIS_MNEMONIC_VPBLENDMQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0103*/ { ZYDIS_MNEMONIC_VPBROADCASTD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0103*/ { ZYDIS_MNEMONIC_VPBROADCASTD, 3, 0x089C, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0104*/ { ZYDIS_MNEMONIC_VPBROADCASTQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0104*/ { ZYDIS_MNEMONIC_VPBROADCASTQ, 3, 0x11B4, 0x00, ZYDIS_MVEX_FUNC_UF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0105*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0105*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0106*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0106*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0107*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0107*/ { ZYDIS_MNEMONIC_VPCMPD, 5, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0108*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0108*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0109*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0109*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010A*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*010A*/ { ZYDIS_MNEMONIC_VPCMPEQD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010B*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*010B*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010C*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*010C*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010D*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*010D*/ { ZYDIS_MNEMONIC_VPCMPGTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010E*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*010E*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*010F*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*010F*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0110*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0110*/ { ZYDIS_MNEMONIC_VPCMPLTD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0111*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03BE, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0111*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03BE, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0112*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03C3, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0112*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03C3, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0113*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03C3, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0113*/ { ZYDIS_MNEMONIC_VPCMPUD, 5, 0x03C3, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0114*/ { ZYDIS_MNEMONIC_VPERMD, 4, 0x0396, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0114*/ { ZYDIS_MNEMONIC_VPERMD, 4, 0x0396, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0115*/ { ZYDIS_MNEMONIC_VPERMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0115*/ { ZYDIS_MNEMONIC_VPERMD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0116*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0116*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0117*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0117*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0118*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0118*/ { ZYDIS_MNEMONIC_VPERMF32X4, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0119*/ { ZYDIS_MNEMONIC_VPGATHERDD, 3, 0x11DE, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0119*/ { ZYDIS_MNEMONIC_VPGATHERDD, 3, 0x11DE, 0x00, ZYDIS_MVEX_FUNC_UI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011A*/ { ZYDIS_MNEMONIC_VPGATHERDQ, 3, 0x11E1, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*011A*/ { ZYDIS_MNEMONIC_VPGATHERDQ, 3, 0x11E1, 0x00, ZYDIS_MVEX_FUNC_UI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011B*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*011B*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011C*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*011C*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011D*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*011D*/ { ZYDIS_MNEMONIC_VPMADD231D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011E*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16, ZYDIS_MASK_POLICY_ALLOWED }, /*011E*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*011F*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*011F*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0120*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0120*/ { ZYDIS_MNEMONIC_VPMADD233D, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0121*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0121*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0122*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0122*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0123*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0123*/ { ZYDIS_MNEMONIC_VPMAXSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0124*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0124*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0125*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0125*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0126*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0126*/ { ZYDIS_MNEMONIC_VPMAXUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0127*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0127*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0128*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0128*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0129*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0129*/ { ZYDIS_MNEMONIC_VPMINSD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012A*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*012A*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012B*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*012B*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012C*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*012C*/ { ZYDIS_MNEMONIC_VPMINUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012D*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*012D*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012E*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*012E*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*012F*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*012F*/ { ZYDIS_MNEMONIC_VPMULHD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0130*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0130*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0131*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0131*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0132*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0132*/ { ZYDIS_MNEMONIC_VPMULHUD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0133*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0133*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0134*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0134*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0135*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0135*/ { ZYDIS_MNEMONIC_VPMULLD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0136*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0136*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0137*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0137*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0138*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0138*/ { ZYDIS_MNEMONIC_VPORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0139*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0139*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*013A*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*013A*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*013B*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*013B*/ { ZYDIS_MNEMONIC_VPORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*013C*/ { ZYDIS_MNEMONIC_VPREFETCH0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*013C*/ { ZYDIS_MNEMONIC_VPREFETCH0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*013D*/ { ZYDIS_MNEMONIC_VPREFETCH1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*013D*/ { ZYDIS_MNEMONIC_VPREFETCH1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*013E*/ { ZYDIS_MNEMONIC_VPREFETCH2, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*013E*/ { ZYDIS_MNEMONIC_VPREFETCH2, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*013F*/ { ZYDIS_MNEMONIC_VPREFETCHE0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*013F*/ { ZYDIS_MNEMONIC_VPREFETCHE0, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0140*/ { ZYDIS_MNEMONIC_VPREFETCHE1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0140*/ { ZYDIS_MNEMONIC_VPREFETCHE1, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0141*/ { ZYDIS_MNEMONIC_VPREFETCHE2, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0141*/ { ZYDIS_MNEMONIC_VPREFETCHE2, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0142*/ { ZYDIS_MNEMONIC_VPREFETCHENTA, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0142*/ { ZYDIS_MNEMONIC_VPREFETCHENTA, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0143*/ { ZYDIS_MNEMONIC_VPREFETCHNTA, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID }, /*0143*/ { ZYDIS_MNEMONIC_VPREFETCHNTA, 1, 0x16CA, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_INVALID, ZYDIS_FALSE },
/*0144*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0144*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0145*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0145*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0146*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0146*/ { ZYDIS_MNEMONIC_VPSBBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0147*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0147*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0148*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0148*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0149*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0149*/ { ZYDIS_MNEMONIC_VPSBBRD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014A*/ { ZYDIS_MNEMONIC_VPSCATTERDD, 3, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*014A*/ { ZYDIS_MNEMONIC_VPSCATTERDD, 3, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_DI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014B*/ { ZYDIS_MNEMONIC_VPSCATTERDQ, 3, 0x11E7, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*014B*/ { ZYDIS_MNEMONIC_VPSCATTERDQ, 3, 0x11E7, 0x00, ZYDIS_MVEX_FUNC_DI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014C*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED }, /*014C*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014D*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*014D*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014E*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*014E*/ { ZYDIS_MNEMONIC_VPSHUFD, 4, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*014F*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*014F*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0150*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0150*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0151*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0151*/ { ZYDIS_MNEMONIC_VPSLLD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0152*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0152*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0153*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0153*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0154*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0154*/ { ZYDIS_MNEMONIC_VPSLLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0155*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0155*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0156*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0156*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0157*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0157*/ { ZYDIS_MNEMONIC_VPSRAD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0158*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0158*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0159*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0159*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015A*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*015A*/ { ZYDIS_MNEMONIC_VPSRAVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015B*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*015B*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015C*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*015C*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D4, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015D*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*015D*/ { ZYDIS_MNEMONIC_VPSRLD, 4, 0x08D8, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015E*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*015E*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08DC, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*015F*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*015F*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0160*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0160*/ { ZYDIS_MNEMONIC_VPSRLVD, 4, 0x08E0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0161*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0161*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0162*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0162*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0163*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0163*/ { ZYDIS_MNEMONIC_VPSUBD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0164*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0164*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0165*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0165*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0166*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0166*/ { ZYDIS_MNEMONIC_VPSUBRD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0167*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0167*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0168*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0168*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0169*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0169*/ { ZYDIS_MNEMONIC_VPSUBRSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016A*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*016A*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016B*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*016B*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016C*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*016C*/ { ZYDIS_MNEMONIC_VPSUBSETBD, 4, 0x08C8, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016D*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*016D*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B4, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016E*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*016E*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*016F*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*016F*/ { ZYDIS_MNEMONIC_VPTESTMD, 4, 0x03B9, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0170*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0170*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0171*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0171*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0172*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0172*/ { ZYDIS_MNEMONIC_VPXORD, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0173*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0173*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SI_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0174*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0174*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0175*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0175*/ { ZYDIS_MNEMONIC_VPXORQ, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0176*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0176*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0177*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0177*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0178*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0178*/ { ZYDIS_MNEMONIC_VRCP23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0179*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0179*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08B8, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017A*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*017A*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017B*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*017B*/ { ZYDIS_MNEMONIC_VRNDFXPNTPD, 4, 0x08BC, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017C*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*017C*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x0894, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017D*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*017D*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017E*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*017E*/ { ZYDIS_MNEMONIC_VRNDFXPNTPS, 4, 0x08C0, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*017F*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED }, /*017F*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08CC, 0x00, ZYDIS_MVEX_FUNC_F_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0180*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED }, /*0180*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_SAE, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0181*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0181*/ { ZYDIS_MNEMONIC_VRSQRT23PS, 3, 0x08D0, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0182*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0182*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SI_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0183*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0183*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0184*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED }, /*0184*/ { ZYDIS_MNEMONIC_VSCALEPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_INVALID, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0185*/ { ZYDIS_MNEMONIC_VSCATTERDPD, 3, 0x11EA, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0185*/ { ZYDIS_MNEMONIC_VSCATTERDPD, 3, 0x11EA, 0x00, ZYDIS_MVEX_FUNC_DF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0186*/ { ZYDIS_MNEMONIC_VSCATTERDPS, 3, 0x11ED, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0186*/ { ZYDIS_MNEMONIC_VSCATTERDPS, 3, 0x11ED, 0x00, ZYDIS_MVEX_FUNC_DF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0187*/ { ZYDIS_MNEMONIC_VSCATTERPF0DPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0187*/ { ZYDIS_MNEMONIC_VSCATTERPF0DPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0188*/ { ZYDIS_MNEMONIC_VSCATTERPF0HINTDPD, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0188*/ { ZYDIS_MNEMONIC_VSCATTERPF0HINTDPD, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0189*/ { ZYDIS_MNEMONIC_VSCATTERPF0HINTDPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0189*/ { ZYDIS_MNEMONIC_VSCATTERPF0HINTDPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018A*/ { ZYDIS_MNEMONIC_VSCATTERPF1DPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*018A*/ { ZYDIS_MNEMONIC_VSCATTERPF1DPS, 2, 0x11E4, 0x00, ZYDIS_MVEX_FUNC_UF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018B*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*018B*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018C*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*018C*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018D*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*018D*/ { ZYDIS_MNEMONIC_VSUBPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018E*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*018E*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*018F*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*018F*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0190*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0190*/ { ZYDIS_MNEMONIC_VSUBPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0191*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0191*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0880, 0x00, ZYDIS_MVEX_FUNC_SF_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0192*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED }, /*0192*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_64, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0193*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED }, /*0193*/ { ZYDIS_MNEMONIC_VSUBRPD, 4, 0x0884, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0194*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0194*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x0888, 0x00, ZYDIS_MVEX_FUNC_SF_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0195*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED }, /*0195*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_SWIZZLE_32, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE },
/*0196*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED } /*0196*/ { ZYDIS_MNEMONIC_VSUBRPS, 4, 0x039B, 0x00, ZYDIS_MVEX_FUNC_RC, ZYDIS_MASK_POLICY_ALLOWED, ZYDIS_FALSE }
}; };

View File

@ -628,6 +628,7 @@ typedef struct ZydisInstructionDefinitionMVEX_
ZYDIS_INSTRUCTION_DEFINITION_BASE; ZYDIS_INSTRUCTION_DEFINITION_BASE;
ZydisMVEXFunctionality functionality : 5; ZydisMVEXFunctionality functionality : 5;
ZydisMaskPolicy maskPolicy : 2; ZydisMaskPolicy maskPolicy : 2;
ZydisBool hasElementGranularity : 1;
} ZydisInstructionDefinitionMVEX; } ZydisInstructionDefinitionMVEX;
/* ---------------------------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------------------------------- */

View File

@ -2615,6 +2615,7 @@ static void ZydisSetAVXInformation(ZydisDecoderContext* context,
(const ZydisInstructionDefinitionMVEX*)definition; (const ZydisInstructionDefinitionMVEX*)definition;
// Compressed disp8 scale // Compressed disp8 scale
uint8_t index = def->hasElementGranularity;
switch (def->functionality) switch (def->functionality)
{ {
case ZYDIS_MVEX_FUNC_INVALID: case ZYDIS_MVEX_FUNC_INVALID:
@ -2633,23 +2634,27 @@ static void ZydisSetAVXInformation(ZydisDecoderContext* context,
case ZYDIS_MVEX_FUNC_SF_32: case ZYDIS_MVEX_FUNC_SF_32:
case ZYDIS_MVEX_FUNC_UF_32: case ZYDIS_MVEX_FUNC_UF_32:
{ {
static const uint8_t lookup[8] = static const uint8_t lookup[3][8] =
{ {
64, 4, 16, 32, 16, 16, 32, 32 { 64, 4, 16, 32, 16, 16, 32, 32 },
{ 4, 0, 0, 2, 1, 1, 2, 2 },
{ 16, 0, 0, 8, 4, 4, 8, 8 }
}; };
ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup)); ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup[index]));
info->avx.compressedDisp8Scale = lookup[info->details.mvex.SSS]; info->avx.compressedDisp8Scale = lookup[index][info->details.mvex.SSS];
break; break;
} }
case ZYDIS_MVEX_FUNC_SI_32: case ZYDIS_MVEX_FUNC_SI_32:
case ZYDIS_MVEX_FUNC_UI_32: case ZYDIS_MVEX_FUNC_UI_32:
{ {
static const uint8_t lookup[8] = static const uint8_t lookup[3][8] =
{ {
64, 4, 16, 0, 16, 16, 32, 32 { 64, 4, 16, 0, 16, 16, 32, 32 },
{ 4, 0, 0, 0, 1, 1, 2, 2 },
{ 16, 0, 0, 0, 4, 4, 8, 8 }
}; };
ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup)); ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup[index]));
info->avx.compressedDisp8Scale = lookup[info->details.mvex.SSS]; info->avx.compressedDisp8Scale = lookup[index][info->details.mvex.SSS];
break; break;
} }
case ZYDIS_MVEX_FUNC_SF_64: case ZYDIS_MVEX_FUNC_SF_64:
@ -2657,29 +2662,40 @@ static void ZydisSetAVXInformation(ZydisDecoderContext* context,
case ZYDIS_MVEX_FUNC_SI_64: case ZYDIS_MVEX_FUNC_SI_64:
case ZYDIS_MVEX_FUNC_UI_64: case ZYDIS_MVEX_FUNC_UI_64:
{ {
static const uint8_t lookup[3] = static const uint8_t lookup[3][3] =
{ {
64, 8, 32 { 64, 8, 32 },
{ 8, 0, 0 },
{ 32, 0, 0 }
}; };
ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup)); ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup[index]));
info->avx.compressedDisp8Scale = lookup[info->details.mvex.SSS]; info->avx.compressedDisp8Scale = lookup[index][info->details.mvex.SSS];
break; break;
} }
case ZYDIS_MVEX_FUNC_DF_32: case ZYDIS_MVEX_FUNC_DF_32:
case ZYDIS_MVEX_FUNC_DI_32: case ZYDIS_MVEX_FUNC_DI_32:
{ {
static const uint8_t lookup[8] = static const uint8_t lookup[2][8] =
{ {
64, 0, 0, 32, 16, 16, 32, 32 { 64, 0, 0, 32, 16, 16, 32, 32 },
{ 4, 0, 0, 2, 1, 1, 2, 2 }
}; };
ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup)); ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup[index]));
info->avx.compressedDisp8Scale = lookup[info->details.mvex.SSS]; info->avx.compressedDisp8Scale = lookup[index][info->details.mvex.SSS];
break; break;
} }
case ZYDIS_MVEX_FUNC_DF_64: case ZYDIS_MVEX_FUNC_DF_64:
case ZYDIS_MVEX_FUNC_DI_64: case ZYDIS_MVEX_FUNC_DI_64:
info->avx.compressedDisp8Scale = 64; {
static const uint8_t lookup[2][1] =
{
{ 64 },
{ 8 }
};
ZYDIS_ASSERT(info->details.mvex.SSS < ZYDIS_ARRAY_SIZE(lookup[index]));
info->avx.compressedDisp8Scale = lookup[index][info->details.mvex.SSS];
break; break;
}
default: default:
ZYDIS_UNREACHABLE; ZYDIS_UNREACHABLE;
} }