1
0
mirror of https://github.com/bitdefender/bddisasm.git synced 2024-12-22 05:58:07 +00:00

bindings: Update rsbddisasm

This commit is contained in:
Anichitei Ionel-Cristinel 2024-09-16 12:57:05 +03:00
parent f44ac0ce39
commit e4bb7c25db
No known key found for this signature in database
GPG Key ID: 0DA162A111284D2E
8 changed files with 191 additions and 4 deletions

View File

@ -6,4 +6,4 @@ members = [
]
[workspace.package]
version = "0.4.2"
version = "0.5.0"

View File

@ -14,7 +14,7 @@ categories = ["api-bindings", "hardware-support"]
keywords = ["disassembler", "decoder", "x86", "amd64", "x86_64"]
[dependencies]
bddisasm-sys = { version = "0.4.2", path = "../bddisasm-sys" }
bddisasm-sys = { version = "0.5.0", path = "../bddisasm-sys" }
[features]
std = []

View File

@ -18,7 +18,7 @@ Add `bddisasm` to your `Cargo.toml`:
```toml
[dependencies]
bddisasm = "0.4"
bddisasm = "0.5.0"
```
## Examples

View File

@ -120,6 +120,9 @@ pub enum DecodeError {
/// EVEX payload byte 3 is invalid.
InvalidEvexByte3,
/// EVEX.U field is invalid.
BadEvexU,
/// Internal library error.
InternalError(u64),
}
@ -187,6 +190,9 @@ impl fmt::Display for DecodeError {
DecodeError::InvalidEvexByte3 => {
write!(f, "EVEX payload byte 3 is invalid.")
}
DecodeError::BadEvexU => {
write!(f, "EVEX.U field is invalid.")
}
DecodeError::InternalError(e) => write!(f, "internal error: {}", e),
}
}
@ -239,6 +245,7 @@ pub(crate) fn status_to_error(status: ffi::NDSTATUS) -> Result<(), DecodeError>
ffi::ND_STATUS_INVALID_INSTRUX => Err(DecodeError::InvalidInstrux),
ffi::ND_STATUS_BUFFER_OVERFLOW => Err(DecodeError::BufferOverflow),
ffi::ND_STATUS_INVALID_EVEX_BYTE3 => Err(DecodeError::InvalidEvexByte3),
ffi::ND_STATUS_BAD_EVEX_U => Err(DecodeError::BadEvexU),
ffi::ND_STATUS_INTERNAL_ERROR => Err(DecodeError::InternalError(0)),
_ => panic!("Unexpected status: {:#x}", status),
}

View File

@ -18,6 +18,13 @@ pub enum Category {
APX,
ARITH,
AVX,
AVX10BF16,
AVX10CMPSFP,
AVX10CONVERT,
AVX10INT,
AVX10MINMAX,
AVX10PARTCOPY,
AVX10SCONVERT,
AVX2,
AVX2GATHER,
AVX512,
@ -141,6 +148,13 @@ impl TryFrom<ffi::ND_INS_CATEGORY> for Category {
ffi::_ND_INS_TYPE::ND_CAT_APX => Ok(Category::APX),
ffi::_ND_INS_TYPE::ND_CAT_ARITH => Ok(Category::ARITH),
ffi::_ND_INS_TYPE::ND_CAT_AVX => Ok(Category::AVX),
ffi::_ND_INS_TYPE::ND_CAT_AVX10BF16 => Ok(Category::AVX10BF16),
ffi::_ND_INS_TYPE::ND_CAT_AVX10CMPSFP => Ok(Category::AVX10CMPSFP),
ffi::_ND_INS_TYPE::ND_CAT_AVX10CONVERT => Ok(Category::AVX10CONVERT),
ffi::_ND_INS_TYPE::ND_CAT_AVX10INT => Ok(Category::AVX10INT),
ffi::_ND_INS_TYPE::ND_CAT_AVX10MINMAX => Ok(Category::AVX10MINMAX),
ffi::_ND_INS_TYPE::ND_CAT_AVX10PARTCOPY => Ok(Category::AVX10PARTCOPY),
ffi::_ND_INS_TYPE::ND_CAT_AVX10SCONVERT => Ok(Category::AVX10SCONVERT),
ffi::_ND_INS_TYPE::ND_CAT_AVX2 => Ok(Category::AVX2),
ffi::_ND_INS_TYPE::ND_CAT_AVX2GATHER => Ok(Category::AVX2GATHER),
ffi::_ND_INS_TYPE::ND_CAT_AVX512 => Ok(Category::AVX512),

View File

@ -22,6 +22,7 @@ pub enum IsaSet {
AMXTILE,
APX_F,
AVX,
AVX102,
AVX2,
AVX2GATHER,
AVX5124FMAPS,
@ -164,6 +165,7 @@ impl TryFrom<ffi::ND_INS_SET> for IsaSet {
ffi::_ND_INS_SET::ND_SET_AMXTILE => Ok(IsaSet::AMXTILE),
ffi::_ND_INS_SET::ND_SET_APX_F => Ok(IsaSet::APX_F),
ffi::_ND_INS_SET::ND_SET_AVX => Ok(IsaSet::AVX),
ffi::_ND_INS_SET::ND_SET_AVX102 => Ok(IsaSet::AVX102),
ffi::_ND_INS_SET::ND_SET_AVX2 => Ok(IsaSet::AVX2),
ffi::_ND_INS_SET::ND_SET_AVX2GATHER => Ok(IsaSet::AVX2GATHER),
ffi::_ND_INS_SET::ND_SET_AVX5124FMAPS => Ok(IsaSet::AVX5124FMAPS),

View File

@ -22,7 +22,7 @@
//!
//! ```toml
//! [dependencies]
//! bddisasm = "0.2"
//! bddisasm = "0.5.0"
//! ```
//!
//! # Examples

View File

@ -643,6 +643,7 @@ pub enum Mnemonic {
RETN,
RMPADJUST,
RMPQUERY,
RMPREAD,
RMPUPDATE,
ROL,
ROR,
@ -757,6 +758,7 @@ pub enum Mnemonic {
V4FMADDSS,
V4FNMADDPS,
V4FNMADDSS,
VADDNEPBF16,
VADDPD,
VADDPH,
VADDPS,
@ -799,6 +801,7 @@ pub enum Mnemonic {
VBROADCASTI64X4,
VBROADCASTSD,
VBROADCASTSS,
VCMPPBF16,
VCMPPD,
VCMPPH,
VCMPPS,
@ -810,14 +813,34 @@ pub enum Mnemonic {
VCOMISS,
VCOMPRESSPD,
VCOMPRESSPS,
VCOMSBF16,
VCOMXSD,
VCOMXSH,
VCOMXSS,
VCVT2PS2PHX,
VCVTBIASPH2BF8,
VCVTBIASPH2BF8S,
VCVTBIASPH2HF8,
VCVTBIASPH2HF8S,
VCVTDQ2PD,
VCVTDQ2PH,
VCVTDQ2PS,
VCVTHF82PH,
VCVTNE2PH2BF8,
VCVTNE2PH2BF8S,
VCVTNE2PH2HF8,
VCVTNE2PH2HF8S,
VCVTNE2PS2BF16,
VCVTNEBF162IBS,
VCVTNEBF162IUBS,
VCVTNEEBF162PS,
VCVTNEEPH2PS,
VCVTNEOBF162PS,
VCVTNEOPH2PS,
VCVTNEPH2BF8,
VCVTNEPH2BF8S,
VCVTNEPH2HF8,
VCVTNEPH2HF8S,
VCVTNEPS2BF16,
VCVTPD2DQ,
VCVTPD2PH,
@ -826,6 +849,8 @@ pub enum Mnemonic {
VCVTPD2UDQ,
VCVTPD2UQQ,
VCVTPH2DQ,
VCVTPH2IBS,
VCVTPH2IUBS,
VCVTPH2PD,
VCVTPH2PS,
VCVTPH2PSX,
@ -835,6 +860,8 @@ pub enum Mnemonic {
VCVTPH2UW,
VCVTPH2W,
VCVTPS2DQ,
VCVTPS2IBS,
VCVTPS2IUBS,
VCVTPS2PD,
VCVTPS2PH,
VCVTPS2PHX,
@ -859,26 +886,44 @@ pub enum Mnemonic {
VCVTSS2SH,
VCVTSS2SI,
VCVTSS2USI,
VCVTTNEBF162IBS,
VCVTTNEBF162IUBS,
VCVTTPD2DQ,
VCVTTPD2DQS,
VCVTTPD2QQ,
VCVTTPD2QQS,
VCVTTPD2UDQ,
VCVTTPD2UDQS,
VCVTTPD2UQQ,
VCVTTPD2UQQS,
VCVTTPH2DQ,
VCVTTPH2IBS,
VCVTTPH2IUBS,
VCVTTPH2QQ,
VCVTTPH2UDQ,
VCVTTPH2UQQ,
VCVTTPH2UW,
VCVTTPH2W,
VCVTTPS2DQ,
VCVTTPS2DQS,
VCVTTPS2IBS,
VCVTTPS2IUBS,
VCVTTPS2QQ,
VCVTTPS2QQS,
VCVTTPS2UDQ,
VCVTTPS2UDQS,
VCVTTPS2UQQ,
VCVTTPS2UQQS,
VCVTTSD2SI,
VCVTTSD2SIS,
VCVTTSD2USI,
VCVTTSD2USIS,
VCVTTSH2SI,
VCVTTSH2USI,
VCVTTSS2SI,
VCVTTSS2SIS,
VCVTTSS2USI,
VCVTTSS2USIS,
VCVTUDQ2PD,
VCVTUDQ2PH,
VCVTUDQ2PS,
@ -891,6 +936,7 @@ pub enum Mnemonic {
VCVTUW2PH,
VCVTW2PH,
VDBPSADBW,
VDIVNEPBF16,
VDIVPD,
VDIVPH,
VDIVPS,
@ -899,6 +945,7 @@ pub enum Mnemonic {
VDIVSS,
VDPBF16PS,
VDPPD,
VDPPHPS,
VDPPS,
VERR,
VERW,
@ -925,18 +972,21 @@ pub enum Mnemonic {
VFIXUPIMMPS,
VFIXUPIMMSD,
VFIXUPIMMSS,
VFMADD132NEPBF16,
VFMADD132PD,
VFMADD132PH,
VFMADD132PS,
VFMADD132SD,
VFMADD132SH,
VFMADD132SS,
VFMADD213NEPBF16,
VFMADD213PD,
VFMADD213PH,
VFMADD213PS,
VFMADD213SD,
VFMADD213SH,
VFMADD213SS,
VFMADD231NEPBF16,
VFMADD231PD,
VFMADD231PH,
VFMADD231PS,
@ -960,18 +1010,21 @@ pub enum Mnemonic {
VFMADDSUB231PS,
VFMADDSUBPD,
VFMADDSUBPS,
VFMSUB132NEPBF16,
VFMSUB132PD,
VFMSUB132PH,
VFMSUB132PS,
VFMSUB132SD,
VFMSUB132SH,
VFMSUB132SS,
VFMSUB213NEPBF16,
VFMSUB213PD,
VFMSUB213PH,
VFMSUB213PS,
VFMSUB213SD,
VFMSUB213SH,
VFMSUB213SS,
VFMSUB231NEPBF16,
VFMSUB231PD,
VFMSUB231PH,
VFMSUB231PS,
@ -995,18 +1048,21 @@ pub enum Mnemonic {
VFMSUBSS,
VFMULCPH,
VFMULCSH,
VFNMADD132NEPBF16,
VFNMADD132PD,
VFNMADD132PH,
VFNMADD132PS,
VFNMADD132SD,
VFNMADD132SH,
VFNMADD132SS,
VFNMADD213NEPBF16,
VFNMADD213PD,
VFNMADD213PH,
VFNMADD213PS,
VFNMADD213SD,
VFNMADD213SH,
VFNMADD213SS,
VFNMADD231NEPBF16,
VFNMADD231PD,
VFNMADD231PH,
VFNMADD231PS,
@ -1017,18 +1073,21 @@ pub enum Mnemonic {
VFNMADDPS,
VFNMADDSD,
VFNMADDSS,
VFNMSUB132NEPBF16,
VFNMSUB132PD,
VFNMSUB132PH,
VFNMSUB132PS,
VFNMSUB132SD,
VFNMSUB132SH,
VFNMSUB132SS,
VFNMSUB213NEPBF16,
VFNMSUB213PD,
VFNMSUB213PH,
VFNMSUB213PS,
VFNMSUB213SD,
VFNMSUB213SH,
VFNMSUB213SS,
VFNMSUB231NEPBF16,
VFNMSUB231PD,
VFNMSUB231PH,
VFNMSUB231PS,
@ -1039,6 +1098,7 @@ pub enum Mnemonic {
VFNMSUBPS,
VFNMSUBSD,
VFNMSUBSS,
VFPCLASSPBF16,
VFPCLASSPD,
VFPCLASSPH,
VFPCLASSPS,
@ -1061,12 +1121,14 @@ pub enum Mnemonic {
VGATHERPF1QPS,
VGATHERQPD,
VGATHERQPS,
VGETEXPPBF16,
VGETEXPPD,
VGETEXPPH,
VGETEXPPS,
VGETEXPSD,
VGETEXPSH,
VGETEXPSS,
VGETMANTPBF16,
VGETMANTPD,
VGETMANTPH,
VGETMANTPS,
@ -1096,6 +1158,7 @@ pub enum Mnemonic {
VMASKMOVDQU,
VMASKMOVPD,
VMASKMOVPS,
VMAXPBF16,
VMAXPD,
VMAXPH,
VMAXPS,
@ -1106,6 +1169,14 @@ pub enum Mnemonic {
VMCLEAR,
VMFUNC,
VMGEXIT,
VMINMAXNEPBF16,
VMINMAXPD,
VMINMAXPH,
VMINMAXPS,
VMINMAXSD,
VMINMAXSH,
VMINMAXSS,
VMINPBF16,
VMINPD,
VMINPH,
VMINPS,
@ -1155,6 +1226,7 @@ pub enum Mnemonic {
VMRESUME,
VMRUN,
VMSAVE,
VMULNEPBF16,
VMULPD,
VMULPH,
VMULPS,
@ -1521,16 +1593,19 @@ pub enum Mnemonic {
VRCP28PS,
VRCP28SD,
VRCP28SS,
VRCPPBF16,
VRCPPH,
VRCPPS,
VRCPSH,
VRCPSS,
VREDUCENEPBF16,
VREDUCEPD,
VREDUCEPH,
VREDUCEPS,
VREDUCESD,
VREDUCESH,
VREDUCESS,
VRNDSCALENEPBF16,
VRNDSCALEPD,
VRNDSCALEPH,
VRNDSCALEPS,
@ -1549,10 +1624,12 @@ pub enum Mnemonic {
VRSQRT28PS,
VRSQRT28SD,
VRSQRT28SS,
VRSQRTPBF16,
VRSQRTPH,
VRSQRTPS,
VRSQRTSH,
VRSQRTSS,
VSCALEFPBF16,
VSCALEFPD,
VSCALEFPH,
VSCALEFPS,
@ -1585,6 +1662,7 @@ pub enum Mnemonic {
VSM3RNDS2,
VSM4KEY4,
VSM4RNDS4,
VSQRTNEPBF16,
VSQRTPD,
VSQRTPH,
VSQRTPS,
@ -1592,6 +1670,7 @@ pub enum Mnemonic {
VSQRTSH,
VSQRTSS,
VSTMXCSR,
VSUBNEPBF16,
VSUBPD,
VSUBPH,
VSUBPS,
@ -1603,6 +1682,9 @@ pub enum Mnemonic {
VUCOMISD,
VUCOMISH,
VUCOMISS,
VUCOMXSD,
VUCOMXSH,
VUCOMXSS,
VUNPCKHPD,
VUNPCKHPS,
VUNPCKLPD,
@ -2284,6 +2366,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_RETN => Ok(Mnemonic::RETN),
ffi::_ND_INS_CLASS::ND_INS_RMPADJUST => Ok(Mnemonic::RMPADJUST),
ffi::_ND_INS_CLASS::ND_INS_RMPQUERY => Ok(Mnemonic::RMPQUERY),
ffi::_ND_INS_CLASS::ND_INS_RMPREAD => Ok(Mnemonic::RMPREAD),
ffi::_ND_INS_CLASS::ND_INS_RMPUPDATE => Ok(Mnemonic::RMPUPDATE),
ffi::_ND_INS_CLASS::ND_INS_ROL => Ok(Mnemonic::ROL),
ffi::_ND_INS_CLASS::ND_INS_ROR => Ok(Mnemonic::ROR),
@ -2398,6 +2481,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_V4FMADDSS => Ok(Mnemonic::V4FMADDSS),
ffi::_ND_INS_CLASS::ND_INS_V4FNMADDPS => Ok(Mnemonic::V4FNMADDPS),
ffi::_ND_INS_CLASS::ND_INS_V4FNMADDSS => Ok(Mnemonic::V4FNMADDSS),
ffi::_ND_INS_CLASS::ND_INS_VADDNEPBF16 => Ok(Mnemonic::VADDNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VADDPD => Ok(Mnemonic::VADDPD),
ffi::_ND_INS_CLASS::ND_INS_VADDPH => Ok(Mnemonic::VADDPH),
ffi::_ND_INS_CLASS::ND_INS_VADDPS => Ok(Mnemonic::VADDPS),
@ -2440,6 +2524,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VBROADCASTI64X4 => Ok(Mnemonic::VBROADCASTI64X4),
ffi::_ND_INS_CLASS::ND_INS_VBROADCASTSD => Ok(Mnemonic::VBROADCASTSD),
ffi::_ND_INS_CLASS::ND_INS_VBROADCASTSS => Ok(Mnemonic::VBROADCASTSS),
ffi::_ND_INS_CLASS::ND_INS_VCMPPBF16 => Ok(Mnemonic::VCMPPBF16),
ffi::_ND_INS_CLASS::ND_INS_VCMPPD => Ok(Mnemonic::VCMPPD),
ffi::_ND_INS_CLASS::ND_INS_VCMPPH => Ok(Mnemonic::VCMPPH),
ffi::_ND_INS_CLASS::ND_INS_VCMPPS => Ok(Mnemonic::VCMPPS),
@ -2451,14 +2536,34 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VCOMISS => Ok(Mnemonic::VCOMISS),
ffi::_ND_INS_CLASS::ND_INS_VCOMPRESSPD => Ok(Mnemonic::VCOMPRESSPD),
ffi::_ND_INS_CLASS::ND_INS_VCOMPRESSPS => Ok(Mnemonic::VCOMPRESSPS),
ffi::_ND_INS_CLASS::ND_INS_VCOMSBF16 => Ok(Mnemonic::VCOMSBF16),
ffi::_ND_INS_CLASS::ND_INS_VCOMXSD => Ok(Mnemonic::VCOMXSD),
ffi::_ND_INS_CLASS::ND_INS_VCOMXSH => Ok(Mnemonic::VCOMXSH),
ffi::_ND_INS_CLASS::ND_INS_VCOMXSS => Ok(Mnemonic::VCOMXSS),
ffi::_ND_INS_CLASS::ND_INS_VCVT2PS2PHX => Ok(Mnemonic::VCVT2PS2PHX),
ffi::_ND_INS_CLASS::ND_INS_VCVTBIASPH2BF8 => Ok(Mnemonic::VCVTBIASPH2BF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTBIASPH2BF8S => Ok(Mnemonic::VCVTBIASPH2BF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTBIASPH2HF8 => Ok(Mnemonic::VCVTBIASPH2HF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTBIASPH2HF8S => Ok(Mnemonic::VCVTBIASPH2HF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTDQ2PD => Ok(Mnemonic::VCVTDQ2PD),
ffi::_ND_INS_CLASS::ND_INS_VCVTDQ2PH => Ok(Mnemonic::VCVTDQ2PH),
ffi::_ND_INS_CLASS::ND_INS_VCVTDQ2PS => Ok(Mnemonic::VCVTDQ2PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTHF82PH => Ok(Mnemonic::VCVTHF82PH),
ffi::_ND_INS_CLASS::ND_INS_VCVTNE2PH2BF8 => Ok(Mnemonic::VCVTNE2PH2BF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTNE2PH2BF8S => Ok(Mnemonic::VCVTNE2PH2BF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTNE2PH2HF8 => Ok(Mnemonic::VCVTNE2PH2HF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTNE2PH2HF8S => Ok(Mnemonic::VCVTNE2PH2HF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTNE2PS2BF16 => Ok(Mnemonic::VCVTNE2PS2BF16),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEBF162IBS => Ok(Mnemonic::VCVTNEBF162IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEBF162IUBS => Ok(Mnemonic::VCVTNEBF162IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEEBF162PS => Ok(Mnemonic::VCVTNEEBF162PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEEPH2PS => Ok(Mnemonic::VCVTNEEPH2PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEOBF162PS => Ok(Mnemonic::VCVTNEOBF162PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEOPH2PS => Ok(Mnemonic::VCVTNEOPH2PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEPH2BF8 => Ok(Mnemonic::VCVTNEPH2BF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEPH2BF8S => Ok(Mnemonic::VCVTNEPH2BF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEPH2HF8 => Ok(Mnemonic::VCVTNEPH2HF8),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEPH2HF8S => Ok(Mnemonic::VCVTNEPH2HF8S),
ffi::_ND_INS_CLASS::ND_INS_VCVTNEPS2BF16 => Ok(Mnemonic::VCVTNEPS2BF16),
ffi::_ND_INS_CLASS::ND_INS_VCVTPD2DQ => Ok(Mnemonic::VCVTPD2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTPD2PH => Ok(Mnemonic::VCVTPD2PH),
@ -2467,6 +2572,8 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VCVTPD2UDQ => Ok(Mnemonic::VCVTPD2UDQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTPD2UQQ => Ok(Mnemonic::VCVTPD2UQQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2DQ => Ok(Mnemonic::VCVTPH2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2IBS => Ok(Mnemonic::VCVTPH2IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2IUBS => Ok(Mnemonic::VCVTPH2IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2PD => Ok(Mnemonic::VCVTPH2PD),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2PS => Ok(Mnemonic::VCVTPH2PS),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2PSX => Ok(Mnemonic::VCVTPH2PSX),
@ -2476,6 +2583,8 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2UW => Ok(Mnemonic::VCVTPH2UW),
ffi::_ND_INS_CLASS::ND_INS_VCVTPH2W => Ok(Mnemonic::VCVTPH2W),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2DQ => Ok(Mnemonic::VCVTPS2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2IBS => Ok(Mnemonic::VCVTPS2IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2IUBS => Ok(Mnemonic::VCVTPS2IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2PD => Ok(Mnemonic::VCVTPS2PD),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2PH => Ok(Mnemonic::VCVTPS2PH),
ffi::_ND_INS_CLASS::ND_INS_VCVTPS2PHX => Ok(Mnemonic::VCVTPS2PHX),
@ -2500,26 +2609,44 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VCVTSS2SH => Ok(Mnemonic::VCVTSS2SH),
ffi::_ND_INS_CLASS::ND_INS_VCVTSS2SI => Ok(Mnemonic::VCVTSS2SI),
ffi::_ND_INS_CLASS::ND_INS_VCVTSS2USI => Ok(Mnemonic::VCVTSS2USI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTNEBF162IBS => Ok(Mnemonic::VCVTTNEBF162IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTNEBF162IUBS => Ok(Mnemonic::VCVTTNEBF162IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2DQ => Ok(Mnemonic::VCVTTPD2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2DQS => Ok(Mnemonic::VCVTTPD2DQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2QQ => Ok(Mnemonic::VCVTTPD2QQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2QQS => Ok(Mnemonic::VCVTTPD2QQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2UDQ => Ok(Mnemonic::VCVTTPD2UDQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2UDQS => Ok(Mnemonic::VCVTTPD2UDQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2UQQ => Ok(Mnemonic::VCVTTPD2UQQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPD2UQQS => Ok(Mnemonic::VCVTTPD2UQQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2DQ => Ok(Mnemonic::VCVTTPH2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2IBS => Ok(Mnemonic::VCVTTPH2IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2IUBS => Ok(Mnemonic::VCVTTPH2IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2QQ => Ok(Mnemonic::VCVTTPH2QQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2UDQ => Ok(Mnemonic::VCVTTPH2UDQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2UQQ => Ok(Mnemonic::VCVTTPH2UQQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2UW => Ok(Mnemonic::VCVTTPH2UW),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPH2W => Ok(Mnemonic::VCVTTPH2W),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2DQ => Ok(Mnemonic::VCVTTPS2DQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2DQS => Ok(Mnemonic::VCVTTPS2DQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2IBS => Ok(Mnemonic::VCVTTPS2IBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2IUBS => Ok(Mnemonic::VCVTTPS2IUBS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2QQ => Ok(Mnemonic::VCVTTPS2QQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2QQS => Ok(Mnemonic::VCVTTPS2QQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2UDQ => Ok(Mnemonic::VCVTTPS2UDQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2UDQS => Ok(Mnemonic::VCVTTPS2UDQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2UQQ => Ok(Mnemonic::VCVTTPS2UQQ),
ffi::_ND_INS_CLASS::ND_INS_VCVTTPS2UQQS => Ok(Mnemonic::VCVTTPS2UQQS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSD2SI => Ok(Mnemonic::VCVTTSD2SI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSD2SIS => Ok(Mnemonic::VCVTTSD2SIS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSD2USI => Ok(Mnemonic::VCVTTSD2USI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSD2USIS => Ok(Mnemonic::VCVTTSD2USIS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSH2SI => Ok(Mnemonic::VCVTTSH2SI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSH2USI => Ok(Mnemonic::VCVTTSH2USI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSS2SI => Ok(Mnemonic::VCVTTSS2SI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSS2SIS => Ok(Mnemonic::VCVTTSS2SIS),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSS2USI => Ok(Mnemonic::VCVTTSS2USI),
ffi::_ND_INS_CLASS::ND_INS_VCVTTSS2USIS => Ok(Mnemonic::VCVTTSS2USIS),
ffi::_ND_INS_CLASS::ND_INS_VCVTUDQ2PD => Ok(Mnemonic::VCVTUDQ2PD),
ffi::_ND_INS_CLASS::ND_INS_VCVTUDQ2PH => Ok(Mnemonic::VCVTUDQ2PH),
ffi::_ND_INS_CLASS::ND_INS_VCVTUDQ2PS => Ok(Mnemonic::VCVTUDQ2PS),
@ -2532,6 +2659,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VCVTUW2PH => Ok(Mnemonic::VCVTUW2PH),
ffi::_ND_INS_CLASS::ND_INS_VCVTW2PH => Ok(Mnemonic::VCVTW2PH),
ffi::_ND_INS_CLASS::ND_INS_VDBPSADBW => Ok(Mnemonic::VDBPSADBW),
ffi::_ND_INS_CLASS::ND_INS_VDIVNEPBF16 => Ok(Mnemonic::VDIVNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VDIVPD => Ok(Mnemonic::VDIVPD),
ffi::_ND_INS_CLASS::ND_INS_VDIVPH => Ok(Mnemonic::VDIVPH),
ffi::_ND_INS_CLASS::ND_INS_VDIVPS => Ok(Mnemonic::VDIVPS),
@ -2540,6 +2668,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VDIVSS => Ok(Mnemonic::VDIVSS),
ffi::_ND_INS_CLASS::ND_INS_VDPBF16PS => Ok(Mnemonic::VDPBF16PS),
ffi::_ND_INS_CLASS::ND_INS_VDPPD => Ok(Mnemonic::VDPPD),
ffi::_ND_INS_CLASS::ND_INS_VDPPHPS => Ok(Mnemonic::VDPPHPS),
ffi::_ND_INS_CLASS::ND_INS_VDPPS => Ok(Mnemonic::VDPPS),
ffi::_ND_INS_CLASS::ND_INS_VERR => Ok(Mnemonic::VERR),
ffi::_ND_INS_CLASS::ND_INS_VERW => Ok(Mnemonic::VERW),
@ -2566,18 +2695,21 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VFIXUPIMMPS => Ok(Mnemonic::VFIXUPIMMPS),
ffi::_ND_INS_CLASS::ND_INS_VFIXUPIMMSD => Ok(Mnemonic::VFIXUPIMMSD),
ffi::_ND_INS_CLASS::ND_INS_VFIXUPIMMSS => Ok(Mnemonic::VFIXUPIMMSS),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132NEPBF16 => Ok(Mnemonic::VFMADD132NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132PD => Ok(Mnemonic::VFMADD132PD),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132PH => Ok(Mnemonic::VFMADD132PH),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132PS => Ok(Mnemonic::VFMADD132PS),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132SD => Ok(Mnemonic::VFMADD132SD),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132SH => Ok(Mnemonic::VFMADD132SH),
ffi::_ND_INS_CLASS::ND_INS_VFMADD132SS => Ok(Mnemonic::VFMADD132SS),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213NEPBF16 => Ok(Mnemonic::VFMADD213NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213PD => Ok(Mnemonic::VFMADD213PD),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213PH => Ok(Mnemonic::VFMADD213PH),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213PS => Ok(Mnemonic::VFMADD213PS),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213SD => Ok(Mnemonic::VFMADD213SD),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213SH => Ok(Mnemonic::VFMADD213SH),
ffi::_ND_INS_CLASS::ND_INS_VFMADD213SS => Ok(Mnemonic::VFMADD213SS),
ffi::_ND_INS_CLASS::ND_INS_VFMADD231NEPBF16 => Ok(Mnemonic::VFMADD231NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMADD231PD => Ok(Mnemonic::VFMADD231PD),
ffi::_ND_INS_CLASS::ND_INS_VFMADD231PH => Ok(Mnemonic::VFMADD231PH),
ffi::_ND_INS_CLASS::ND_INS_VFMADD231PS => Ok(Mnemonic::VFMADD231PS),
@ -2601,18 +2733,21 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VFMADDSUB231PS => Ok(Mnemonic::VFMADDSUB231PS),
ffi::_ND_INS_CLASS::ND_INS_VFMADDSUBPD => Ok(Mnemonic::VFMADDSUBPD),
ffi::_ND_INS_CLASS::ND_INS_VFMADDSUBPS => Ok(Mnemonic::VFMADDSUBPS),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132NEPBF16 => Ok(Mnemonic::VFMSUB132NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132PD => Ok(Mnemonic::VFMSUB132PD),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132PH => Ok(Mnemonic::VFMSUB132PH),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132PS => Ok(Mnemonic::VFMSUB132PS),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132SD => Ok(Mnemonic::VFMSUB132SD),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132SH => Ok(Mnemonic::VFMSUB132SH),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB132SS => Ok(Mnemonic::VFMSUB132SS),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213NEPBF16 => Ok(Mnemonic::VFMSUB213NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213PD => Ok(Mnemonic::VFMSUB213PD),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213PH => Ok(Mnemonic::VFMSUB213PH),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213PS => Ok(Mnemonic::VFMSUB213PS),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213SD => Ok(Mnemonic::VFMSUB213SD),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213SH => Ok(Mnemonic::VFMSUB213SH),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB213SS => Ok(Mnemonic::VFMSUB213SS),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB231NEPBF16 => Ok(Mnemonic::VFMSUB231NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB231PD => Ok(Mnemonic::VFMSUB231PD),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB231PH => Ok(Mnemonic::VFMSUB231PH),
ffi::_ND_INS_CLASS::ND_INS_VFMSUB231PS => Ok(Mnemonic::VFMSUB231PS),
@ -2636,18 +2771,21 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VFMSUBSS => Ok(Mnemonic::VFMSUBSS),
ffi::_ND_INS_CLASS::ND_INS_VFMULCPH => Ok(Mnemonic::VFMULCPH),
ffi::_ND_INS_CLASS::ND_INS_VFMULCSH => Ok(Mnemonic::VFMULCSH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132NEPBF16 => Ok(Mnemonic::VFNMADD132NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132PD => Ok(Mnemonic::VFNMADD132PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132PH => Ok(Mnemonic::VFNMADD132PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132PS => Ok(Mnemonic::VFNMADD132PS),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132SD => Ok(Mnemonic::VFNMADD132SD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132SH => Ok(Mnemonic::VFNMADD132SH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD132SS => Ok(Mnemonic::VFNMADD132SS),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213NEPBF16 => Ok(Mnemonic::VFNMADD213NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213PD => Ok(Mnemonic::VFNMADD213PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213PH => Ok(Mnemonic::VFNMADD213PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213PS => Ok(Mnemonic::VFNMADD213PS),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213SD => Ok(Mnemonic::VFNMADD213SD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213SH => Ok(Mnemonic::VFNMADD213SH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD213SS => Ok(Mnemonic::VFNMADD213SS),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD231NEPBF16 => Ok(Mnemonic::VFNMADD231NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD231PD => Ok(Mnemonic::VFNMADD231PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD231PH => Ok(Mnemonic::VFNMADD231PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMADD231PS => Ok(Mnemonic::VFNMADD231PS),
@ -2658,18 +2796,21 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VFNMADDPS => Ok(Mnemonic::VFNMADDPS),
ffi::_ND_INS_CLASS::ND_INS_VFNMADDSD => Ok(Mnemonic::VFNMADDSD),
ffi::_ND_INS_CLASS::ND_INS_VFNMADDSS => Ok(Mnemonic::VFNMADDSS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132NEPBF16 => Ok(Mnemonic::VFNMSUB132NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132PD => Ok(Mnemonic::VFNMSUB132PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132PH => Ok(Mnemonic::VFNMSUB132PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132PS => Ok(Mnemonic::VFNMSUB132PS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132SD => Ok(Mnemonic::VFNMSUB132SD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132SH => Ok(Mnemonic::VFNMSUB132SH),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB132SS => Ok(Mnemonic::VFNMSUB132SS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213NEPBF16 => Ok(Mnemonic::VFNMSUB213NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213PD => Ok(Mnemonic::VFNMSUB213PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213PH => Ok(Mnemonic::VFNMSUB213PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213PS => Ok(Mnemonic::VFNMSUB213PS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213SD => Ok(Mnemonic::VFNMSUB213SD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213SH => Ok(Mnemonic::VFNMSUB213SH),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB213SS => Ok(Mnemonic::VFNMSUB213SS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB231NEPBF16 => Ok(Mnemonic::VFNMSUB231NEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB231PD => Ok(Mnemonic::VFNMSUB231PD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB231PH => Ok(Mnemonic::VFNMSUB231PH),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUB231PS => Ok(Mnemonic::VFNMSUB231PS),
@ -2680,6 +2821,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VFNMSUBPS => Ok(Mnemonic::VFNMSUBPS),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUBSD => Ok(Mnemonic::VFNMSUBSD),
ffi::_ND_INS_CLASS::ND_INS_VFNMSUBSS => Ok(Mnemonic::VFNMSUBSS),
ffi::_ND_INS_CLASS::ND_INS_VFPCLASSPBF16 => Ok(Mnemonic::VFPCLASSPBF16),
ffi::_ND_INS_CLASS::ND_INS_VFPCLASSPD => Ok(Mnemonic::VFPCLASSPD),
ffi::_ND_INS_CLASS::ND_INS_VFPCLASSPH => Ok(Mnemonic::VFPCLASSPH),
ffi::_ND_INS_CLASS::ND_INS_VFPCLASSPS => Ok(Mnemonic::VFPCLASSPS),
@ -2702,12 +2844,14 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VGATHERPF1QPS => Ok(Mnemonic::VGATHERPF1QPS),
ffi::_ND_INS_CLASS::ND_INS_VGATHERQPD => Ok(Mnemonic::VGATHERQPD),
ffi::_ND_INS_CLASS::ND_INS_VGATHERQPS => Ok(Mnemonic::VGATHERQPS),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPPBF16 => Ok(Mnemonic::VGETEXPPBF16),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPPD => Ok(Mnemonic::VGETEXPPD),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPPH => Ok(Mnemonic::VGETEXPPH),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPPS => Ok(Mnemonic::VGETEXPPS),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPSD => Ok(Mnemonic::VGETEXPSD),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPSH => Ok(Mnemonic::VGETEXPSH),
ffi::_ND_INS_CLASS::ND_INS_VGETEXPSS => Ok(Mnemonic::VGETEXPSS),
ffi::_ND_INS_CLASS::ND_INS_VGETMANTPBF16 => Ok(Mnemonic::VGETMANTPBF16),
ffi::_ND_INS_CLASS::ND_INS_VGETMANTPD => Ok(Mnemonic::VGETMANTPD),
ffi::_ND_INS_CLASS::ND_INS_VGETMANTPH => Ok(Mnemonic::VGETMANTPH),
ffi::_ND_INS_CLASS::ND_INS_VGETMANTPS => Ok(Mnemonic::VGETMANTPS),
@ -2737,6 +2881,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VMASKMOVDQU => Ok(Mnemonic::VMASKMOVDQU),
ffi::_ND_INS_CLASS::ND_INS_VMASKMOVPD => Ok(Mnemonic::VMASKMOVPD),
ffi::_ND_INS_CLASS::ND_INS_VMASKMOVPS => Ok(Mnemonic::VMASKMOVPS),
ffi::_ND_INS_CLASS::ND_INS_VMAXPBF16 => Ok(Mnemonic::VMAXPBF16),
ffi::_ND_INS_CLASS::ND_INS_VMAXPD => Ok(Mnemonic::VMAXPD),
ffi::_ND_INS_CLASS::ND_INS_VMAXPH => Ok(Mnemonic::VMAXPH),
ffi::_ND_INS_CLASS::ND_INS_VMAXPS => Ok(Mnemonic::VMAXPS),
@ -2747,6 +2892,14 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VMCLEAR => Ok(Mnemonic::VMCLEAR),
ffi::_ND_INS_CLASS::ND_INS_VMFUNC => Ok(Mnemonic::VMFUNC),
ffi::_ND_INS_CLASS::ND_INS_VMGEXIT => Ok(Mnemonic::VMGEXIT),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXNEPBF16 => Ok(Mnemonic::VMINMAXNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXPD => Ok(Mnemonic::VMINMAXPD),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXPH => Ok(Mnemonic::VMINMAXPH),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXPS => Ok(Mnemonic::VMINMAXPS),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXSD => Ok(Mnemonic::VMINMAXSD),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXSH => Ok(Mnemonic::VMINMAXSH),
ffi::_ND_INS_CLASS::ND_INS_VMINMAXSS => Ok(Mnemonic::VMINMAXSS),
ffi::_ND_INS_CLASS::ND_INS_VMINPBF16 => Ok(Mnemonic::VMINPBF16),
ffi::_ND_INS_CLASS::ND_INS_VMINPD => Ok(Mnemonic::VMINPD),
ffi::_ND_INS_CLASS::ND_INS_VMINPH => Ok(Mnemonic::VMINPH),
ffi::_ND_INS_CLASS::ND_INS_VMINPS => Ok(Mnemonic::VMINPS),
@ -2796,6 +2949,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VMRESUME => Ok(Mnemonic::VMRESUME),
ffi::_ND_INS_CLASS::ND_INS_VMRUN => Ok(Mnemonic::VMRUN),
ffi::_ND_INS_CLASS::ND_INS_VMSAVE => Ok(Mnemonic::VMSAVE),
ffi::_ND_INS_CLASS::ND_INS_VMULNEPBF16 => Ok(Mnemonic::VMULNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VMULPD => Ok(Mnemonic::VMULPD),
ffi::_ND_INS_CLASS::ND_INS_VMULPH => Ok(Mnemonic::VMULPH),
ffi::_ND_INS_CLASS::ND_INS_VMULPS => Ok(Mnemonic::VMULPS),
@ -3162,16 +3316,19 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VRCP28PS => Ok(Mnemonic::VRCP28PS),
ffi::_ND_INS_CLASS::ND_INS_VRCP28SD => Ok(Mnemonic::VRCP28SD),
ffi::_ND_INS_CLASS::ND_INS_VRCP28SS => Ok(Mnemonic::VRCP28SS),
ffi::_ND_INS_CLASS::ND_INS_VRCPPBF16 => Ok(Mnemonic::VRCPPBF16),
ffi::_ND_INS_CLASS::ND_INS_VRCPPH => Ok(Mnemonic::VRCPPH),
ffi::_ND_INS_CLASS::ND_INS_VRCPPS => Ok(Mnemonic::VRCPPS),
ffi::_ND_INS_CLASS::ND_INS_VRCPSH => Ok(Mnemonic::VRCPSH),
ffi::_ND_INS_CLASS::ND_INS_VRCPSS => Ok(Mnemonic::VRCPSS),
ffi::_ND_INS_CLASS::ND_INS_VREDUCENEPBF16 => Ok(Mnemonic::VREDUCENEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VREDUCEPD => Ok(Mnemonic::VREDUCEPD),
ffi::_ND_INS_CLASS::ND_INS_VREDUCEPH => Ok(Mnemonic::VREDUCEPH),
ffi::_ND_INS_CLASS::ND_INS_VREDUCEPS => Ok(Mnemonic::VREDUCEPS),
ffi::_ND_INS_CLASS::ND_INS_VREDUCESD => Ok(Mnemonic::VREDUCESD),
ffi::_ND_INS_CLASS::ND_INS_VREDUCESH => Ok(Mnemonic::VREDUCESH),
ffi::_ND_INS_CLASS::ND_INS_VREDUCESS => Ok(Mnemonic::VREDUCESS),
ffi::_ND_INS_CLASS::ND_INS_VRNDSCALENEPBF16 => Ok(Mnemonic::VRNDSCALENEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VRNDSCALEPD => Ok(Mnemonic::VRNDSCALEPD),
ffi::_ND_INS_CLASS::ND_INS_VRNDSCALEPH => Ok(Mnemonic::VRNDSCALEPH),
ffi::_ND_INS_CLASS::ND_INS_VRNDSCALEPS => Ok(Mnemonic::VRNDSCALEPS),
@ -3190,10 +3347,12 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VRSQRT28PS => Ok(Mnemonic::VRSQRT28PS),
ffi::_ND_INS_CLASS::ND_INS_VRSQRT28SD => Ok(Mnemonic::VRSQRT28SD),
ffi::_ND_INS_CLASS::ND_INS_VRSQRT28SS => Ok(Mnemonic::VRSQRT28SS),
ffi::_ND_INS_CLASS::ND_INS_VRSQRTPBF16 => Ok(Mnemonic::VRSQRTPBF16),
ffi::_ND_INS_CLASS::ND_INS_VRSQRTPH => Ok(Mnemonic::VRSQRTPH),
ffi::_ND_INS_CLASS::ND_INS_VRSQRTPS => Ok(Mnemonic::VRSQRTPS),
ffi::_ND_INS_CLASS::ND_INS_VRSQRTSH => Ok(Mnemonic::VRSQRTSH),
ffi::_ND_INS_CLASS::ND_INS_VRSQRTSS => Ok(Mnemonic::VRSQRTSS),
ffi::_ND_INS_CLASS::ND_INS_VSCALEFPBF16 => Ok(Mnemonic::VSCALEFPBF16),
ffi::_ND_INS_CLASS::ND_INS_VSCALEFPD => Ok(Mnemonic::VSCALEFPD),
ffi::_ND_INS_CLASS::ND_INS_VSCALEFPH => Ok(Mnemonic::VSCALEFPH),
ffi::_ND_INS_CLASS::ND_INS_VSCALEFPS => Ok(Mnemonic::VSCALEFPS),
@ -3226,6 +3385,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VSM3RNDS2 => Ok(Mnemonic::VSM3RNDS2),
ffi::_ND_INS_CLASS::ND_INS_VSM4KEY4 => Ok(Mnemonic::VSM4KEY4),
ffi::_ND_INS_CLASS::ND_INS_VSM4RNDS4 => Ok(Mnemonic::VSM4RNDS4),
ffi::_ND_INS_CLASS::ND_INS_VSQRTNEPBF16 => Ok(Mnemonic::VSQRTNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VSQRTPD => Ok(Mnemonic::VSQRTPD),
ffi::_ND_INS_CLASS::ND_INS_VSQRTPH => Ok(Mnemonic::VSQRTPH),
ffi::_ND_INS_CLASS::ND_INS_VSQRTPS => Ok(Mnemonic::VSQRTPS),
@ -3233,6 +3393,7 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VSQRTSH => Ok(Mnemonic::VSQRTSH),
ffi::_ND_INS_CLASS::ND_INS_VSQRTSS => Ok(Mnemonic::VSQRTSS),
ffi::_ND_INS_CLASS::ND_INS_VSTMXCSR => Ok(Mnemonic::VSTMXCSR),
ffi::_ND_INS_CLASS::ND_INS_VSUBNEPBF16 => Ok(Mnemonic::VSUBNEPBF16),
ffi::_ND_INS_CLASS::ND_INS_VSUBPD => Ok(Mnemonic::VSUBPD),
ffi::_ND_INS_CLASS::ND_INS_VSUBPH => Ok(Mnemonic::VSUBPH),
ffi::_ND_INS_CLASS::ND_INS_VSUBPS => Ok(Mnemonic::VSUBPS),
@ -3244,6 +3405,9 @@ impl TryFrom<ffi::ND_INS_CLASS> for Mnemonic {
ffi::_ND_INS_CLASS::ND_INS_VUCOMISD => Ok(Mnemonic::VUCOMISD),
ffi::_ND_INS_CLASS::ND_INS_VUCOMISH => Ok(Mnemonic::VUCOMISH),
ffi::_ND_INS_CLASS::ND_INS_VUCOMISS => Ok(Mnemonic::VUCOMISS),
ffi::_ND_INS_CLASS::ND_INS_VUCOMXSD => Ok(Mnemonic::VUCOMXSD),
ffi::_ND_INS_CLASS::ND_INS_VUCOMXSH => Ok(Mnemonic::VUCOMXSH),
ffi::_ND_INS_CLASS::ND_INS_VUCOMXSS => Ok(Mnemonic::VUCOMXSS),
ffi::_ND_INS_CLASS::ND_INS_VUNPCKHPD => Ok(Mnemonic::VUNPCKHPD),
ffi::_ND_INS_CLASS::ND_INS_VUNPCKHPS => Ok(Mnemonic::VUNPCKHPS),
ffi::_ND_INS_CLASS::ND_INS_VUNPCKLPD => Ok(Mnemonic::VUNPCKLPD),