diff --git a/bindings/rsbddisasm/Cargo.toml b/bindings/rsbddisasm/Cargo.toml index 8e23ee6..f191d77 100644 --- a/bindings/rsbddisasm/Cargo.toml +++ b/bindings/rsbddisasm/Cargo.toml @@ -6,4 +6,4 @@ members = [ ] [workspace.package] -version = "0.4.2" +version = "0.5.0" diff --git a/bindings/rsbddisasm/bddisasm/Cargo.toml b/bindings/rsbddisasm/bddisasm/Cargo.toml index 2d1f2f1..30e286f 100644 --- a/bindings/rsbddisasm/bddisasm/Cargo.toml +++ b/bindings/rsbddisasm/bddisasm/Cargo.toml @@ -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 = [] diff --git a/bindings/rsbddisasm/bddisasm/README.md b/bindings/rsbddisasm/bddisasm/README.md index 455b47e..c05a0b2 100644 --- a/bindings/rsbddisasm/bddisasm/README.md +++ b/bindings/rsbddisasm/bddisasm/README.md @@ -18,7 +18,7 @@ Add `bddisasm` to your `Cargo.toml`: ```toml [dependencies] -bddisasm = "0.4" +bddisasm = "0.5.0" ``` ## Examples diff --git a/bindings/rsbddisasm/bddisasm/src/decode_error.rs b/bindings/rsbddisasm/bddisasm/src/decode_error.rs index 5937324..7274c49 100644 --- a/bindings/rsbddisasm/bddisasm/src/decode_error.rs +++ b/bindings/rsbddisasm/bddisasm/src/decode_error.rs @@ -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), } diff --git a/bindings/rsbddisasm/bddisasm/src/instruction_category.rs b/bindings/rsbddisasm/bddisasm/src/instruction_category.rs index 03672e1..f93f359 100644 --- a/bindings/rsbddisasm/bddisasm/src/instruction_category.rs +++ b/bindings/rsbddisasm/bddisasm/src/instruction_category.rs @@ -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 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), diff --git a/bindings/rsbddisasm/bddisasm/src/isa_set.rs b/bindings/rsbddisasm/bddisasm/src/isa_set.rs index a5abcea..a8a59ba 100644 --- a/bindings/rsbddisasm/bddisasm/src/isa_set.rs +++ b/bindings/rsbddisasm/bddisasm/src/isa_set.rs @@ -22,6 +22,7 @@ pub enum IsaSet { AMXTILE, APX_F, AVX, + AVX102, AVX2, AVX2GATHER, AVX5124FMAPS, @@ -164,6 +165,7 @@ impl TryFrom 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), diff --git a/bindings/rsbddisasm/bddisasm/src/lib.rs b/bindings/rsbddisasm/bddisasm/src/lib.rs index be0793a..515dfce 100644 --- a/bindings/rsbddisasm/bddisasm/src/lib.rs +++ b/bindings/rsbddisasm/bddisasm/src/lib.rs @@ -22,7 +22,7 @@ //! //! ```toml //! [dependencies] -//! bddisasm = "0.2" +//! bddisasm = "0.5.0" //! ``` //! //! # Examples diff --git a/bindings/rsbddisasm/bddisasm/src/mnemonic.rs b/bindings/rsbddisasm/bddisasm/src/mnemonic.rs index 1f5e157..db9fcad 100644 --- a/bindings/rsbddisasm/bddisasm/src/mnemonic.rs +++ b/bindings/rsbddisasm/bddisasm/src/mnemonic.rs @@ -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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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),