aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2022-07-23 18:23:25 -0700
committeriximeow <me@iximeow.net>2023-01-02 08:50:23 -0800
commitd5eafcbc374357a66794297a60c3a7a2b035bff3 (patch)
treec9fb30c6f07c5d446faa0f7a0d89620f5fc9c86a
parente6e7fabfc907eaf016520d9c2a2e128b0d28f019 (diff)
codegen `Colorized` impl and normalize `name()` implementation
unfortunately because of the layout of instruction information this *adds* lines rather than removes them..
-rw-r--r--data/generate_opcode.py126
-rw-r--r--data/x86_64.json7172
-rw-r--r--src/generated/imp.rs1512
-rw-r--r--src/generated/opcode.rs48
-rw-r--r--src/long_mode/display.rs1446
-rw-r--r--src/protected_mode/display.rs1456
-rw-r--r--src/real_mode/display.rs1456
7 files changed, 8852 insertions, 4364 deletions
diff --git a/data/generate_opcode.py b/data/generate_opcode.py
index e02785d..27eea11 100644
--- a/data/generate_opcode.py
+++ b/data/generate_opcode.py
@@ -6,6 +6,7 @@ class IsaData:
def __init__(self, data):
isa_extensions = isa_data['sets']
microarchitectures = isa_data['uarch']
+ self.instructions = isa_data['instructions']
loaded_exts = {}
for ext in isa_extensions:
@@ -15,6 +16,36 @@ class IsaData:
for arch in microarchitectures:
loaded_uarches[arch['name']] = arch
+ def validate_err(mnemonic, message):
+ raise Exception("inst={}, {}".format(mnemonic, message))
+
+ for (name, data) in self.instructions.items():
+ if "kind" not in data:
+ validate_err(name, "instruction is missing declared kind")
+ if "fault_causes" not in data:
+ validate_err(name, "instruction is missing declared fault causes")
+ if "deprecated" not in data:
+ validate_err(name, "instruction does not declare if it is deprecated")
+ if data['kind'] == "":
+ validate_err(name, "kind is not acutally... populated..")
+
+ for (name, ext) in loaded_exts.items():
+ if 'new' not in ext:
+ raise Exception("ext {} does not have a new instructions section".format(name))
+
+ def validate_instructions(setname, to_validate, insts):
+ for inst in to_validate:
+ # it's actually "include this set", not an instruction, so skip it.
+ # if there's another set with that name, we'll have covered it in iterating all extensions.
+ if inst.startswith("+"):
+ continue
+ if inst not in insts:
+ validate_err(inst, "instruction is in extension {} but not defined".format(setname))
+
+ validate_instructions(name, ext['new'], self.instructions)
+ if 'extended' in ext:
+ validate_instructions(name, ext['extended'], self.instructions)
+
self.exts = loaded_exts
self.uarches = loaded_uarches
self.referenced_sets = set([])
@@ -173,6 +204,8 @@ for root in ROOTS:
f = open("../src/generated/opcode.rs", "w")
f = Output(f)
+f.writeline("use crate::safer_unchecked::GetSaferUnchecked;")
+f.newline()
for annotation in OPCODE_ANNOTATIONS:
f.writeline(annotation)
f.begin_block("pub enum Opcode")
@@ -197,6 +230,17 @@ f.outdent()
f.writeline("];")
f.newline()
+f.begin_block("impl Opcode")
+f.begin_block("pub(crate) fn name(&self) -> &'static str")
+f.comment("safety: `MNEMONICS` and `Opcode` are generated together, where every entry in `Opcode` guarantees")
+f.comment(" a corresponding entry in `MNEMONICS`.")
+f.begin_block("unsafe")
+f.writeline("MNEMONICS.get_kinda_unchecked(*self as usize)")
+f.end_block()
+f.end_block()
+f.end_block()
+f.newline()
+
for root in ROOTS:
if root == "x86_generic":
continue
@@ -214,6 +258,22 @@ for root in ROOTS:
else:
f.writeline("{} = super::Opcode::{} as {},".format(str(inst).upper(), str(inst).upper(), OPCODE_REPR))
f.end_block()
+ f.newline()
+ f.begin_block("impl Opcode")
+
+ f.begin_block("pub fn to_generic(&self) -> super::Opcode")
+ f.comment("safety: each item in `Self` is defined with the same value in `super::Opcode`. `Self` is")
+ f.comment(" a subset of `super::Opcode` so casting to the more generic form is well-defined.")
+ f.writeline("unsafe { core::mem::transmute::<Self, super::Opcode>(*self) }")
+ f.end_block()
+
+ f.newline()
+
+ f.begin_block("fn nane(&self) -> &'static str")
+ f.writeline("self.to_generic().name()")
+ f.end_block()
+
+ f.end_block()
f.end_block()
f.newline()
@@ -235,6 +295,57 @@ f = Output(f)
# f.newline()
+f.writeline("use yaxpeax_arch::{Colorize, YaxColors};")
+f.writeline("use core::fmt;")
+f.writeline("use crate::generated::opcode::Opcode;")
+
+f.newline()
+
+f.begin_block("impl fmt::Display for Opcode")
+f.begin_block("fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result")
+f.writeline("f.write_str(self.name())")
+f.end_block()
+f.end_block()
+
+f.newline()
+
+f.begin_block("impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode")
+f.begin_block("fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result")
+f.begin_block("match self")
+
+by_kind = {}
+for (inst, data) in isa_data.instructions.items():
+ if data['kind'] not in by_kind:
+ by_kind[data['kind']] = []
+ by_kind[data['kind']].append(inst)
+
+for (kind, insts) in by_kind.items():
+ insts = list(insts)
+ insts.sort()
+ suffix_needed = False
+ any_entries = False
+ for inst in insts:
+ if suffix_needed:
+ f.writeline("|")
+
+ if inst == "invalid":
+ f.write("Opcode::Invalid ")
+ else:
+ f.write("Opcode::{} ".format(inst.upper()))
+ suffix_needed = True
+ any_entries = True
+
+ f.writeline("=> {")
+ f.indent()
+ f.writeline("write!(out, \"{{}}\", colors.{}(self))".format(kind))
+ f.outdent()
+ f.writeline("}")
+
+f.end_block()
+f.end_block()
+f.end_block()
+
+f.newline()
for root in ROOTS:
if root == "x86_generic":
@@ -244,6 +355,9 @@ for root in ROOTS:
f.begin_block("pub(crate) mod {}".format(root))
f.writeline("use crate::generated::{}::Opcode;".format(root))
f.writeline("use crate::{}::{{InstDecoder, Instruction, DecodeError}};".format(root))
+ f.newline()
+ f.writeline("use yaxpeax_arch::{Colorize, YaxColors};")
+ f.writeline("use core::fmt;")
f.begin_block("impl InstDecoder")
for ext in arch['extensions']:
@@ -252,6 +366,18 @@ for root in ROOTS:
f.end_block()
f.end_block()
+ f.begin_block("impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode")
+ f.begin_block("fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result")
+ f.writeline("self.to_generic().colorize(colors, out)")
+ f.end_block()
+ f.end_block()
+
+ f.begin_block("impl Opcode")
+ f.begin_block("pub(crate) fn name(&self) -> &'static str")
+ f.writeline("self.to_generic().name()")
+ f.end_block()
+ f.end_block()
+
f.begin_block("pub(crate) fn revise_instruction(decoder: &InstDecoder, inst: &mut Instruction) -> Result<(), DecodeError>")
f.begin_block("if inst.prefixes.evex().is_some()")
diff --git a/data/x86_64.json b/data/x86_64.json
index f11a297..9c83e29 100644
--- a/data/x86_64.json
+++ b/data/x86_64.json
@@ -1270,7 +1270,6 @@
"name": "avx_unimplemented",
"remark": "these avx instructions were missed when implementing the various avx* extensions",
"new": [
- "vpmaxub",
"vpmaxub"
]
},
@@ -2059,7 +2058,7 @@
"vpmaxsd",
"vpmaxsq",
"vpmaxud",
- "vpmaxud",
+ "vpmaxuq",
"vpminsd",
"vpminsq",
"vpminud",
@@ -3422,5 +3421,7172 @@
"+long_mode"
]
}
- ]
+ ],
+ "instructions": {
+ "aaa": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aad": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aam": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aas": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "adc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "adcx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "add": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addsubpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "addsubps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "adox": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdec": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdec128kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdec256kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdeclast": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdecwide128kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesdecwide256kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesenc": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesenc128kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesenc256kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesenclast": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesencwide128kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesencwide256kl": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aesimc": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "aeskeygenassist": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "and": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "andn": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "andnpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "andnps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "andpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "andps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "arpl": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bextr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blendpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blendps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blendvpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blendvps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blendw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blsi": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blsmsk": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "blsr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndcl": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndcn": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndcu": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndldx": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndmk": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndmov": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bndstx": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bound": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bsf": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bsr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bswap": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "btc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "btr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bts": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "bzhi": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "call": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "callf": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cdqe": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clac": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clc": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cld": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clflush": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clflushopt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clgi": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cli": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clrssbsy": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clts": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clui": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clwb": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "clzero": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmc": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmova": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovg": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovge": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovl": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovle": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovna": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovnb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovno": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovnp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovns": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovnz": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovo": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovs": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmovz": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmppd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpxchg": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpxchg16b": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cmpxchg8b": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "comisd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "comiss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cpuid": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cqo": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "crc32": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtdq2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtdq2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtpd2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtpd2pi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtpd2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtpi2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtpi2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtps2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtps2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtps2pi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtsd2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtsd2ss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtsi2sd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtsi2ss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtss2sd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvtss2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttpd2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttpd2pi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttps2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttps2pi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttsd2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cvttss2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "cwde": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "daa": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "das": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "dec": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "div": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "divpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "divps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "divsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "divss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "dppd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "dpps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "emms": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "encls": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "enclu": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "enclv": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "encodekey128": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "encodekey256": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "endbr32": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "endbr64": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "enqcmd": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "enqcmds": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "enter": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "extractps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "extrq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "f2xm1": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fabs": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fadd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "faddp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fbld": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fbstp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fchs": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovbe": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmove": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovnb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovnbe": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovne": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovnu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcmovu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcom": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcomi": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcomip": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcomp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcompp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fcos": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdecstp": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdisi8087_nop": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdiv": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdivp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdivr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fdivrp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "femms": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "feni8087_nop": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ffree": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ffreep": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fiadd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ficom": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ficomp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fidiv": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fidivr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fild": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fimul": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fincstp": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fist": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fistp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fisttp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fisub": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fisubr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fld": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fld1": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldcw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldenv": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldl2e": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldl2t": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldlg2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldln2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldpi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fldz": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fmul": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fmulp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnclex": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fninit": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnop": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnsave": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnstcw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnstenv": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnstor": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fnstsw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fpatan": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fprem": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fprem1": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fptan": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "frndint": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "frstor": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fscale": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsetpm287_nop": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsin": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsincos": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsqrt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fst": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fstp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fstpnce": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsub": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsubp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsubr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fsubrp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ftst": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fucom": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fucomi": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fucomip": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fucomp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fucompp": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fxam": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fxch": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fxrstor": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fxsave": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fxtract": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fyl2x": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "fyl2xp1": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "getsec": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "gf2p8affineinvqb": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "gf2p8affineqb": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "gf2p8mulb": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "haddpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "haddps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "hlt": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "hreset": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "hsubpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "hsubps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "idiv": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "imul": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "in": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "inc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "incssp": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ins": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "insertps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "insertq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "int": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "into": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invalid": {
+ "kind": "invalid_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invd": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invept": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invlpg": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invlpga": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invlpgb": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invpcid": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "invvpid": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "iret": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "iretd": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "iretq": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ja": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jb": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jcxz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jecxz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jg": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jge": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jl": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jle": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jmp": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jmpe": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jmpf": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jna": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jnb": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jno": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jnp": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jns": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jnz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jo": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jp": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jrcxz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "js": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "jz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kaddb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kaddd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kaddq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kaddw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandnb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandnd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandnq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandnw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kandw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kmovb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kmovd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kmovq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kmovw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "knotb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "knotd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "knotq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "knotw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "korb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "korq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kortestb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kortestd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kortestq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kortestw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "korw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftlb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftlq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftlw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftrb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftrd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftrq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kshiftrw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ktestb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ktestd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ktestq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ktestw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kunpckbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kunpckdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kunpckwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxnorb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxnord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxnorq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxnorw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxorb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxorq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "kxorw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lahf": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lar": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lddqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ldmxcsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lds": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lea": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "leave": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "les": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lfence": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lfs": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lgdt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lgs": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lidt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lldt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lmsw": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "loadiwkey": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lods": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "loop": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "loopnz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "loopz": {
+ "kind": "control_flow_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lsl": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lss": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ltr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "lzcnt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maskmovdqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maskmovq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maxpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maxps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maxsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "maxss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mfence": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "minpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "minps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "minsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "minss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "monitor": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "monitorx": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mov": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movapd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movaps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movbe": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movddup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movdir64b": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movdiri": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movdq2q": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movdqa": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movdqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movhlps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movhpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movlhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movlpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movlps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movmskpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movmskps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntdqa": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movnti": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movntss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movq2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movs": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movshdup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movsldup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movsx": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movsxd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movupd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movups": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "movzx": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mpsadbw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mul": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mulpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mulps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mulsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mulss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mulx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mwait": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "mwaitx": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "neg": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "nop": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "not": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "or": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "orpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "orps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "out": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "outs": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pabsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pabsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pabsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "packssdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "packsswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "packusdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "packuswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddusb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddusw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "paddw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "palignr": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pand": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pandn": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pavgb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pavgusb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pavgw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pblendvb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pblendw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pclmulqdq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpeqb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpeqd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpeqq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpeqw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpestri": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpestrm": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpgtb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpgtd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpgtq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpgtw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpistri": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pcmpistrm": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pconfig": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pdep": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pext": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pextrb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pextrd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pextrq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pextrw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pf2id": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pf2iw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfacc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfadd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfcmpeq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfcmpge": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfcmpgt": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfmax": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfmin": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfmul": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfmulhrw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfnacc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfpnacc": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfrcp": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfrcpit1": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfrcpit2": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfrsqit1": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfrsqrt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfsub": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pfsubr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phaddd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phaddsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phaddw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phminposuw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phsubd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phsubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "phsubw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pi2fd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pi2fw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pinsrb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pinsrd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pinsrq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pinsrw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaddubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaddwd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxsb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxsw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxub": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxud": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmaxuw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminsb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminsw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminub": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminud": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pminuw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovmskb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxbd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxbq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovsxwq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxbd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxbq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmovzxwq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmuldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmulhrsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmulhrw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmulhuw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmulhw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmulld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmullw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pmuludq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pop": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "popa": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "popcnt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "popf": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "por": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "prefetch0": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "prefetch1": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "prefetch2": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "prefetchnta": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "prefetchw": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psadbw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pshufb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pshufd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pshufhw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pshuflw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pshufw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psignb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psignd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psignw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pslld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pslldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psllq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psllw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psmash": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psrad": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psraw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psrld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psrldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psrlq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psrlw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubusb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubusw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "psubw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pswapd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ptest": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ptwrite": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpckhbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpckhdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpckhqdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpckhwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpcklbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpckldq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpcklqdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "punpcklwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "push": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pusha": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pushf": {
+ "kind": "stack_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pvalidate": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "pxor": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rcl": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rcpps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rcpss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rcr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdfsbase": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdgsbase": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdmsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdpid": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdpkru": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdpmc": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdpru": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdrand": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdseed": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdtsc": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rdtscp": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "retf": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "return": {
+ "kind": "stop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rmpadjust": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rmpupdate": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rol": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ror": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rorx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "roundpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "roundps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "roundsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "roundss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rsm": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rsqrtps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rsqrtss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "rstorssp": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sahf": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sal": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "salc": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sar": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sarx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "saveprevssp": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sbb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "scas": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "seamcall": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "seamops": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "seamret": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "senduipi": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "seta": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setae": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setbe": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setg": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setge": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setl": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setle": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setno": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setnp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setns": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setnz": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "seto": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setp": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sets": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setssbsy": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "setz": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sfence": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sgdt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha1msg1": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha1msg2": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha1nexte": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha1rnds4": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha256msg1": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha256msg2": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sha256rnds2": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shl": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shlx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shr": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shrd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shrx": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shufpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "shufps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sidt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "skinit": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sldt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "slhd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "smsw": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sqrtpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sqrtps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sqrtsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sqrtss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stac": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stc": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "std": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stgi": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sti": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stmxcsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stos": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "str": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "stui": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sub": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "subpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "subps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "subsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "subss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "swapgs": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "syscall": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sysenter": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sysexit": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "sysret": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "tdcall": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "test": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "testui": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "tlbsync": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "tpause": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "tzcnt": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ucomisd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ucomiss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ud0": {
+ "kind": "invalid_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ud1": {
+ "kind": "invalid_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "ud2": {
+ "kind": "invalid_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "uiret": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "umonitor": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "umwait": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "unpckhpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "unpckhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "unpcklpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "unpcklps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "v4fmaddps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "v4fmaddss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "v4fnmaddps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "v4fnmaddss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddsubpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaddsubps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaesdec": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaesdeclast": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaesenc": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaesenclast": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaesimc": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vaeskeygenassist": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "valignd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "valignq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vandnpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vandnps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vandpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vandps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendmpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendmps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendvpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vblendvps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf32x2": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf32x4": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf64x2": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastf64x4": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti32x2": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti32x4": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti64x2": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcasti64x4": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vbroadcastss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcmppd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcmpps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcmpsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcmpss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcomisd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcomiss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcompressd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcompresspd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcompressps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcompressq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtdq2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtdq2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtne2ps2bf16": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtneps2bf16": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtpd2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtpd2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtpd2qq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtpd2udq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtpd2uqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtph2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2ph": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2qq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2udq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtps2uqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtqq2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtqq2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtsd2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtsd2ss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtsd2usi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtsi2sd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtsi2ss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtss2sd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtss2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtss2usi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttpd2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttpd2qq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttpd2udq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttpd2uqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttps2dq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttps2qq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttps2udq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttps2uqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttsd2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttsd2usi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttss2si": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvttss2usi": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtudq2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtudq2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtuqq2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtuqq2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtusi2sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtusi2ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtusi2usd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vcvtusi2uss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdbpsadbw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdivpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdivps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdivsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdivss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdpbf16ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdppd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vdpps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "verr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "verw": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexp2pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexp2ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexp2sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexp2ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexpandpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vexpandps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractf128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractf32x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractf32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractf64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractf64x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextracti128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextracti32x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextracti32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextracti64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextracti64x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vextractps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfixupimmpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfixupimmps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfixupimmsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfixupimmss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd132sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd132ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd213sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd213ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd231sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmadd231ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmaddsub231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub132sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub132ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub213sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub213ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub231sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsub231ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfmsubadd231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd132sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd132ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd213sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd213ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd231sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmadd231ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub132pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub132ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub132sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub132ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub213pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub213ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub213sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub213ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub231pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub231ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub231sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfnmsub231ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfpclasspd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfpclassps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfpclasssd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vfpclassss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherdpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherdps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf0dpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf0dps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf0qpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf0qps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf1dpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf1dps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf1qpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherpf1qps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherqpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgatherqps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetexppd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetexpps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetexpsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetexpss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetmantpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetmantps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetmantsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgetmantss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgf2p8affineinvqb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgf2p8affineqb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vgf2p8mulb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vhaddpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vhaddps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vhsubpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vhsubps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertf128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertf32x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertf32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertf64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertf64x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinserti128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinserti32x4": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinserti32x8": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinserti64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinserti64x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vinsertps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vlddqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vldmxcsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaskmovdqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaskmovpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaskmovps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaxpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaxps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaxsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmaxss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmcall": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmclear": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmfunc": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vminpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vminps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vminsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vminss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmlaunch": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmload": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmmcall": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovapd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovaps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovddup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqa": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqa32": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqa64": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqu": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqu16": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqu32": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqu64": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovdqu8": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovhlps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovhpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovlhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovlpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovlps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovmskpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovmskps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovntdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovntdqa": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovntpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovntps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovsd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovshdup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovsldup": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovss": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovupd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmovups": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmpsadbw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmptrld": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmptrst": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmread": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmresume": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmrun": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmsave": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmulpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmulps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmulsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmulss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmwrite": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmxoff": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vmxon": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vorpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vorps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vp2intersectd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vp2intersectq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vp4dpwssd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vp4dpwssds": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpabsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpabsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpabsq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpabsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpackssdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpacksswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpackusdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpackuswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddusb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddusw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpaddw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpalignr": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpand": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpandd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpandn": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpandnd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpandnq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpandq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpavgb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpavgw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendmb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendmd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendmq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendmw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendvb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpblendw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastm": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastmb2q": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastmw2d": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpbroadcastw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpclmulqdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpeqb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpeqd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpeqq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpeqw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpestri": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpestrm": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpgtb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpgtd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpgtq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpgtw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpistri": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpistrm": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpub": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpud": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpuq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpuw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcmpw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcompressb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcompressd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcompressq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpcompressw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpconflictd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpconflictq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpdpbusd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpdpbusds": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpdpwssd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpdpwssds": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vperm2f128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vperm2i128": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2b": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2d": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2q": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermi2w": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermilpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermilps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2b": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2d": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2pd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2ps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2q": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermt2w": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpermw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpexpandb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpexpandd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpexpandq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpexpandw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpextrb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpextrd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpextrq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpextrw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpgatherdd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpgatherdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpgatherqd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpgatherqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphaddd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphaddsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphaddw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphminposuw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphsubd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphsubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vphsubw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpinsrb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpinsrd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpinsrq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpinsrw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vplzcntd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vplzcntq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmadd52huq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmadd52luq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaddubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaddwd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaskmovd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaskmovq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxsb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxsq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxsw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxub": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxud": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxuq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmaxuw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminsb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminsd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminsq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminsw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminub": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminud": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminuq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpminuw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovb2d": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovb2m": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovd2m": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovdb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovdw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovm2b": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovm2d": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovm2q": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovm2w": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovmskb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovq2m": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovqb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovqd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovqw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsdb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsqb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsqd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsqw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxbd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxbq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovsxwq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovusdb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovusdw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovusqb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovusqd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovusqw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovuswb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovw2m": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovwb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxbd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxbq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmovzxwq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmuldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmulhrsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmulhuw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmulhw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmulld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmullq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmullw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmultishiftqb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpmuludq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpopcntb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpopcntd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpopcntq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpopcntw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpor": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vporq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprold": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprolq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprolvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprolvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprorq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprorrd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprorrq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprorvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vprorvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsadbw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpscatterdd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpscatterdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpscatterqd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpscatterqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldvw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshldw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdvw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshrdw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshufb": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshufbitqmb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshufd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshufhw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpshuflw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsignb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsignd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsignw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpslld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpslldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsllq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsllvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsllvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsllvw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsllw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrad": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsraq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsravd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsravq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsravw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsraw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrld": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrldq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrlq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrlvd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrlvq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrlvw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsrlw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubsb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubsw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubusb": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubusw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpsubw": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpternlogd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpternlogq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptest": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestmb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestmd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestmq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestmw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestnmb": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestnmd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestnmq": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vptestnmw": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpckhbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpckhdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpckhqdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpckhwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpcklbw": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpckldq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpcklqdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpunpcklwd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpxor": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpxord": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vpxorq": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrangepd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrangeps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrangesd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrangess": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp14pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp14ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp14sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp14ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp28pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp28ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp28sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcp28ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcpps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrcpss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vreducepd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vreduceps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vreducesd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vreducess": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrndscalepd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrndscaleps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrndscalesd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrndscaless": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vroundpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vroundps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vroundsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vroundss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt14pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt14ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt14sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt14ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt28pd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt28ps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt28sd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrt28ss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrtps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vrsqrtss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscaledpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscaledps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscaledsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscaledss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscalefpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscalefps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscalefsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscalefss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterdd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterdpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterdps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterdq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf0dpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf0dps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf0qpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf0qps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf1dpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf1dps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf1qpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterpf1qps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterqd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterqpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterqps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vscatterqq": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshuff32x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshuff64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshufi32x4": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshufi64x2": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshufpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vshufps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsqrtpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsqrtps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsqrtsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsqrtss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vstmxcsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsubpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsubps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsubsd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vsubss": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vtestpd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vtestps": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vucomisd": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vucomiss": {
+ "kind": "comparison_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vunpckhpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vunpckhps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vunpcklpd": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vunpcklps": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vxorpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vxorps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vzeroall": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "vzeroupper": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wait": {
+ "kind": "nop_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wbinvd": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wrfsbase": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wrgsbase": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wrmsr": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wrpkru": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wrss": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "wruss": {
+ "kind": "misc_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xabort": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xadd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xbegin": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xchg": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xend": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xgetbv": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xlat": {
+ "kind": "data_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xor": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xorpd": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xorps": {
+ "kind": "arithmetic_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xresldtrk": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xrstor": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xrstors": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xrstors64": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsave": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsavec": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsavec64": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsaveopt": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsaves": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsaves64": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsetbv": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xsusldtrk": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ },
+ "xtest": {
+ "kind": "platform_op",
+ "deprecated": false,
+ "fault_causes": []
+ }
+ }
}
diff --git a/src/generated/imp.rs b/src/generated/imp.rs
index c028ff7..86ff91e 100644
--- a/src/generated/imp.rs
+++ b/src/generated/imp.rs
@@ -1,6 +1,1479 @@
+use yaxpeax_arch::{Colorize, YaxColors};
+use core::fmt;
+use crate::generated::opcode::Opcode;
+
+impl fmt::Display for Opcode {
+ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+ f.write_str(self.name())
+ }
+}
+
+impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
+ fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
+ match self {
+ Opcode::ARPL |
+ Opcode::BNDCL |
+ Opcode::BNDCN |
+ Opcode::BNDCU |
+ Opcode::BNDLDX |
+ Opcode::BNDMK |
+ Opcode::BNDSTX |
+ Opcode::BOUND |
+ Opcode::CLAC |
+ Opcode::CLFLUSH |
+ Opcode::CLFLUSHOPT |
+ Opcode::CLGI |
+ Opcode::CLTS |
+ Opcode::CLUI |
+ Opcode::CLWB |
+ Opcode::CLZERO |
+ Opcode::CPUID |
+ Opcode::EMMS |
+ Opcode::ENCLS |
+ Opcode::ENCLU |
+ Opcode::ENCLV |
+ Opcode::ENQCMD |
+ Opcode::ENQCMDS |
+ Opcode::FEMMS |
+ Opcode::FXRSTOR |
+ Opcode::FXSAVE |
+ Opcode::GETSEC |
+ Opcode::INVD |
+ Opcode::INVEPT |
+ Opcode::INVLPG |
+ Opcode::INVLPGA |
+ Opcode::INVLPGB |
+ Opcode::INVPCID |
+ Opcode::INVVPID |
+ Opcode::JMPE |
+ Opcode::LAR |
+ Opcode::LDMXCSR |
+ Opcode::LDS |
+ Opcode::LES |
+ Opcode::LFENCE |
+ Opcode::LFS |
+ Opcode::LGDT |
+ Opcode::LGS |
+ Opcode::LIDT |
+ Opcode::LLDT |
+ Opcode::LMSW |
+ Opcode::LSL |
+ Opcode::LSS |
+ Opcode::LTR |
+ Opcode::MFENCE |
+ Opcode::MONITOR |
+ Opcode::MONITORX |
+ Opcode::MWAIT |
+ Opcode::MWAITX |
+ Opcode::PCONFIG |
+ Opcode::PSMASH |
+ Opcode::PTWRITE |
+ Opcode::PVALIDATE |
+ Opcode::RDFSBASE |
+ Opcode::RDGSBASE |
+ Opcode::RDMSR |
+ Opcode::RDPID |
+ Opcode::RDPKRU |
+ Opcode::RDPMC |
+ Opcode::RDPRU |
+ Opcode::RDTSC |
+ Opcode::RDTSCP |
+ Opcode::RMPADJUST |
+ Opcode::RMPUPDATE |
+ Opcode::RSM |
+ Opcode::SEAMCALL |
+ Opcode::SEAMOPS |
+ Opcode::SEAMRET |
+ Opcode::SENDUIPI |
+ Opcode::SFENCE |
+ Opcode::SGDT |
+ Opcode::SIDT |
+ Opcode::SKINIT |
+ Opcode::SLDT |
+ Opcode::SMSW |
+ Opcode::STAC |
+ Opcode::STGI |
+ Opcode::STMXCSR |
+ Opcode::STR |
+ Opcode::STUI |
+ Opcode::SWAPGS |
+ Opcode::SYSCALL |
+ Opcode::SYSENTER |
+ Opcode::SYSEXIT |
+ Opcode::SYSRET |
+ Opcode::TDCALL |
+ Opcode::TESTUI |
+ Opcode::TLBSYNC |
+ Opcode::TPAUSE |
+ Opcode::UIRET |
+ Opcode::UMONITOR |
+ Opcode::UMWAIT |
+ Opcode::VERR |
+ Opcode::VERW |
+ Opcode::VLDMXCSR |
+ Opcode::VMCALL |
+ Opcode::VMCLEAR |
+ Opcode::VMFUNC |
+ Opcode::VMLAUNCH |
+ Opcode::VMLOAD |
+ Opcode::VMMCALL |
+ Opcode::VMPTRLD |
+ Opcode::VMPTRST |
+ Opcode::VMREAD |
+ Opcode::VMRESUME |
+ Opcode::VMRUN |
+ Opcode::VMSAVE |
+ Opcode::VMWRITE |
+ Opcode::VMXOFF |
+ Opcode::VMXON |
+ Opcode::VSTMXCSR |
+ Opcode::WBINVD |
+ Opcode::WRFSBASE |
+ Opcode::WRGSBASE |
+ Opcode::WRMSR |
+ Opcode::WRPKRU |
+ Opcode::XABORT |
+ Opcode::XBEGIN |
+ Opcode::XEND |
+ Opcode::XGETBV |
+ Opcode::XRESLDTRK |
+ Opcode::XRSTOR |
+ Opcode::XRSTORS |
+ Opcode::XRSTORS64 |
+ Opcode::XSAVE |
+ Opcode::XSAVEC |
+ Opcode::XSAVEC64 |
+ Opcode::XSAVEOPT |
+ Opcode::XSAVES |
+ Opcode::XSAVES64 |
+ Opcode::XSETBV |
+ Opcode::XSUSLDTRK |
+ Opcode::XTEST => {
+ write!(out, "{}", colors.platform_op(self))
+ }
+ Opcode::FDISI8087_NOP |
+ Opcode::FENI8087_NOP |
+ Opcode::FNOP |
+ Opcode::FSETPM287_NOP |
+ Opcode::NOP |
+ Opcode::PREFETCH0 |
+ Opcode::PREFETCH1 |
+ Opcode::PREFETCH2 |
+ Opcode::PREFETCHNTA |
+ Opcode::PREFETCHW |
+ Opcode::WAIT => {
+ write!(out, "{}", colors.nop_op(self))
+ }
+ Opcode::ENTER |
+ Opcode::LEAVE |
+ Opcode::POP |
+ Opcode::POPA |
+ Opcode::POPF |
+ Opcode::PUSH |
+ Opcode::PUSHA |
+ Opcode::PUSHF => {
+ write!(out, "{}", colors.stack_op(self))
+ }
+ Opcode::BLENDPD |
+ Opcode::BLENDPS |
+ Opcode::BLENDVPD |
+ Opcode::BLENDVPS |
+ Opcode::BLENDW |
+ Opcode::BNDMOV |
+ Opcode::BSWAP |
+ Opcode::CBW |
+ Opcode::CDQ |
+ Opcode::CDQE |
+ Opcode::CLC |
+ Opcode::CLD |
+ Opcode::CLI |
+ Opcode::CMC |
+ Opcode::CMOVA |
+ Opcode::CMOVB |
+ Opcode::CMOVG |
+ Opcode::CMOVGE |
+ Opcode::CMOVL |
+ Opcode::CMOVLE |
+ Opcode::CMOVNA |
+ Opcode::CMOVNB |
+ Opcode::CMOVNO |
+ Opcode::CMOVNP |
+ Opcode::CMOVNS |
+ Opcode::CMOVNZ |
+ Opcode::CMOVO |
+ Opcode::CMOVP |
+ Opcode::CMOVS |
+ Opcode::CMOVZ |
+ Opcode::CQO |
+ Opcode::CVTDQ2PD |
+ Opcode::CVTDQ2PS |
+ Opcode::CVTPD2DQ |
+ Opcode::CVTPD2PI |
+ Opcode::CVTPD2PS |
+ Opcode::CVTPI2PD |
+ Opcode::CVTPI2PS |
+ Opcode::CVTPS2DQ |
+ Opcode::CVTPS2PD |
+ Opcode::CVTPS2PI |
+ Opcode::CVTSD2SI |
+ Opcode::CVTSD2SS |
+ Opcode::CVTSI2SD |
+ Opcode::CVTSI2SS |
+ Opcode::CVTSS2SD |
+ Opcode::CVTSS2SI |
+ Opcode::CVTTPD2DQ |
+ Opcode::CVTTPD2PI |
+ Opcode::CVTTPS2DQ |
+ Opcode::CVTTPS2PI |
+ Opcode::CVTTSD2SI |
+ Opcode::CVTTSS2SI |
+ Opcode::CWD |
+ Opcode::CWDE |
+ Opcode::EXTRACTPS |
+ Opcode::EXTRQ |
+ Opcode::FBLD |
+ Opcode::FBSTP |
+ Opcode::FCMOVB |
+ Opcode::FCMOVBE |
+ Opcode::FCMOVE |
+ Opcode::FCMOVNB |
+ Opcode::FCMOVNBE |
+ Opcode::FCMOVNE |
+ Opcode::FCMOVNU |
+ Opcode::FCMOVU |
+ Opcode::FILD |
+ Opcode::FIST |
+ Opcode::FISTP |
+ Opcode::FISTTP |
+ Opcode::FLD |
+ Opcode::FLD1 |
+ Opcode::FLDCW |
+ Opcode::FLDENV |
+ Opcode::FLDL2E |
+ Opcode::FLDL2T |
+ Opcode::FLDLG2 |
+ Opcode::FLDLN2 |
+ Opcode::FLDPI |
+ Opcode::FLDZ |
+ Opcode::FNSAVE |
+ Opcode::FNSTCW |
+ Opcode::FNSTENV |
+ Opcode::FNSTOR |
+ Opcode::FNSTSW |
+ Opcode::FRSTOR |
+ Opcode::FST |
+ Opcode::FSTP |
+ Opcode::FSTPNCE |
+ Opcode::FXCH |
+ Opcode::IN |
+ Opcode::INS |
+ Opcode::INSERTPS |
+ Opcode::INSERTQ |
+ Opcode::KMOVB |
+ Opcode::KMOVD |
+ Opcode::KMOVQ |
+ Opcode::KMOVW |
+ Opcode::KUNPCKBW |
+ Opcode::KUNPCKDQ |
+ Opcode::KUNPCKWD |
+ Opcode::LAHF |
+ Opcode::LDDQU |
+ Opcode::LODS |
+ Opcode::MASKMOVDQU |
+ Opcode::MASKMOVQ |
+ Opcode::MOV |
+ Opcode::MOVAPD |
+ Opcode::MOVAPS |
+ Opcode::MOVBE |
+ Opcode::MOVD |
+ Opcode::MOVDDUP |
+ Opcode::MOVDIR64B |
+ Opcode::MOVDIRI |
+ Opcode::MOVDQ2Q |
+ Opcode::MOVDQA |
+ Opcode::MOVDQU |
+ Opcode::MOVHLPS |
+ Opcode::MOVHPD |
+ Opcode::MOVHPS |
+ Opcode::MOVLHPS |
+ Opcode::MOVLPD |
+ Opcode::MOVLPS |
+ Opcode::MOVMSKPD |
+ Opcode::MOVMSKPS |
+ Opcode::MOVNTDQ |
+ Opcode::MOVNTDQA |
+ Opcode::MOVNTI |
+ Opcode::MOVNTPD |
+ Opcode::MOVNTPS |
+ Opcode::MOVNTQ |
+ Opcode::MOVNTSD |
+ Opcode::MOVNTSS |
+ Opcode::MOVQ |
+ Opcode::MOVQ2DQ |
+ Opcode::MOVS |
+ Opcode::MOVSD |
+ Opcode::MOVSHDUP |
+ Opcode::MOVSLDUP |
+ Opcode::MOVSS |
+ Opcode::MOVSX |
+ Opcode::MOVSXD |
+ Opcode::MOVUPD |
+ Opcode::MOVUPS |
+ Opcode::MOVZX |
+ Opcode::OUT |
+ Opcode::OUTS |
+ Opcode::PACKSSDW |
+ Opcode::PACKSSWB |
+ Opcode::PACKUSDW |
+ Opcode::PACKUSWB |
+ Opcode::PALIGNR |
+ Opcode::PBLENDVB |
+ Opcode::PBLENDW |
+ Opcode::PEXTRB |
+ Opcode::PEXTRD |
+ Opcode::PEXTRQ |
+ Opcode::PEXTRW |
+ Opcode::PF2ID |
+ Opcode::PF2IW |
+ Opcode::PHMINPOSUW |
+ Opcode::PI2FD |
+ Opcode::PI2FW |
+ Opcode::PINSRB |
+ Opcode::PINSRD |
+ Opcode::PINSRQ |
+ Opcode::PINSRW |
+ Opcode::PMOVMSKB |
+ Opcode::PMOVSXBD |
+ Opcode::PMOVSXBQ |
+ Opcode::PMOVSXBW |
+ Opcode::PMOVSXDQ |
+ Opcode::PMOVSXWD |
+ Opcode::PMOVSXWQ |
+ Opcode::PMOVZXBD |
+ Opcode::PMOVZXBQ |
+ Opcode::PMOVZXBW |
+ Opcode::PMOVZXDQ |
+ Opcode::PMOVZXWD |
+ Opcode::PMOVZXWQ |
+ Opcode::PSHUFHW |
+ Opcode::PSHUFLW |
+ Opcode::PUNPCKHBW |
+ Opcode::PUNPCKHDQ |
+ Opcode::PUNPCKHQDQ |
+ Opcode::PUNPCKHWD |
+ Opcode::PUNPCKLBW |
+ Opcode::PUNPCKLDQ |
+ Opcode::PUNPCKLQDQ |
+ Opcode::PUNPCKLWD |
+ Opcode::SAHF |
+ Opcode::SALC |
+ Opcode::SETA |
+ Opcode::SETAE |
+ Opcode::SETB |
+ Opcode::SETBE |
+ Opcode::SETG |
+ Opcode::SETGE |
+ Opcode::SETL |
+ Opcode::SETLE |
+ Opcode::SETNO |
+ Opcode::SETNP |
+ Opcode::SETNS |
+ Opcode::SETNZ |
+ Opcode::SETO |
+ Opcode::SETP |
+ Opcode::SETS |
+ Opcode::SETZ |
+ Opcode::SHUFPD |
+ Opcode::SHUFPS |
+ Opcode::STC |
+ Opcode::STD |
+ Opcode::STI |
+ Opcode::STOS |
+ Opcode::UNPCKHPD |
+ Opcode::UNPCKHPS |
+ Opcode::UNPCKLPD |
+ Opcode::UNPCKLPS |
+ Opcode::VALIGND |
+ Opcode::VALIGNQ |
+ Opcode::VBLENDMPD |
+ Opcode::VBLENDMPS |
+ Opcode::VBLENDPD |
+ Opcode::VBLENDPS |
+ Opcode::VBLENDVPD |
+ Opcode::VBLENDVPS |
+ Opcode::VBROADCASTF128 |
+ Opcode::VBROADCASTI128 |
+ Opcode::VBROADCASTSD |
+ Opcode::VBROADCASTSS |
+ Opcode::VCOMPRESSD |
+ Opcode::VCOMPRESSPD |
+ Opcode::VCOMPRESSPS |
+ Opcode::VCOMPRESSQ |
+ Opcode::VCVTDQ2PD |
+ Opcode::VCVTDQ2PS |
+ Opcode::VCVTPD2DQ |
+ Opcode::VCVTPD2PS |
+ Opcode::VCVTPD2QQ |
+ Opcode::VCVTPD2UDQ |
+ Opcode::VCVTPD2UQQ |
+ Opcode::VCVTPH2PS |
+ Opcode::VCVTPS2DQ |
+ Opcode::VCVTPS2PD |
+ Opcode::VCVTPS2PH |
+ Opcode::VCVTPS2QQ |
+ Opcode::VCVTPS2UDQ |
+ Opcode::VCVTPS2UQQ |
+ Opcode::VCVTQQ2PD |
+ Opcode::VCVTQQ2PS |
+ Opcode::VCVTSD2SI |
+ Opcode::VCVTSD2SS |
+ Opcode::VCVTSD2USI |
+ Opcode::VCVTSI2SD |
+ Opcode::VCVTSI2SS |
+ Opcode::VCVTSS2SD |
+ Opcode::VCVTSS2SI |
+ Opcode::VCVTSS2USI |
+ Opcode::VCVTTPD2DQ |
+ Opcode::VCVTTPD2QQ |
+ Opcode::VCVTTPD2UDQ |
+ Opcode::VCVTTPD2UQQ |
+ Opcode::VCVTTPS2DQ |
+ Opcode::VCVTTPS2QQ |
+ Opcode::VCVTTPS2UDQ |
+ Opcode::VCVTTPS2UQQ |
+ Opcode::VCVTTSD2SI |
+ Opcode::VCVTTSD2USI |
+ Opcode::VCVTTSS2SI |
+ Opcode::VCVTTSS2USI |
+ Opcode::VCVTUDQ2PD |
+ Opcode::VCVTUDQ2PS |
+ Opcode::VCVTUQQ2PD |
+ Opcode::VCVTUQQ2PS |
+ Opcode::VCVTUSI2USD |
+ Opcode::VCVTUSI2USS |
+ Opcode::VEXPANDPD |
+ Opcode::VEXPANDPS |
+ Opcode::VEXTRACTF128 |
+ Opcode::VEXTRACTF32X4 |
+ Opcode::VEXTRACTF64X2 |
+ Opcode::VEXTRACTF64X4 |
+ Opcode::VEXTRACTI128 |
+ Opcode::VEXTRACTI32X4 |
+ Opcode::VEXTRACTI64X2 |
+ Opcode::VEXTRACTI64X4 |
+ Opcode::VEXTRACTPS |
+ Opcode::VFIXUPIMMPD |
+ Opcode::VFIXUPIMMPS |
+ Opcode::VFIXUPIMMSD |
+ Opcode::VFIXUPIMMSS |
+ Opcode::VGATHERDPD |
+ Opcode::VGATHERDPS |
+ Opcode::VGATHERPF0DPD |
+ Opcode::VGATHERPF0DPS |
+ Opcode::VGATHERPF0QPD |
+ Opcode::VGATHERPF0QPS |
+ Opcode::VGATHERPF1DPD |
+ Opcode::VGATHERPF1DPS |
+ Opcode::VGATHERPF1QPD |
+ Opcode::VGATHERPF1QPS |
+ Opcode::VGATHERQPD |
+ Opcode::VGATHERQPS |
+ Opcode::VGETEXPPD |
+ Opcode::VGETEXPPS |
+ Opcode::VGETEXPSD |
+ Opcode::VGETEXPSS |
+ Opcode::VGETMANTPD |
+ Opcode::VGETMANTPS |
+ Opcode::VGETMANTSD |
+ Opcode::VGETMANTSS |
+ Opcode::VINSERTF128 |
+ Opcode::VINSERTF32X4 |
+ Opcode::VINSERTF64X2 |
+ Opcode::VINSERTF64X4 |
+ Opcode::VINSERTI128 |
+ Opcode::VINSERTI64X2 |
+ Opcode::VINSERTI64X4 |
+ Opcode::VINSERTPS |
+ Opcode::VLDDQU |
+ Opcode::VMASKMOVDQU |
+ Opcode::VMASKMOVPD |
+ Opcode::VMASKMOVPS |
+ Opcode::VMOVAPD |
+ Opcode::VMOVAPS |
+ Opcode::VMOVD |
+ Opcode::VMOVDDUP |
+ Opcode::VMOVDQA |
+ Opcode::VMOVDQA32 |
+ Opcode::VMOVDQA64 |
+ Opcode::VMOVDQU |
+ Opcode::VMOVDQU16 |
+ Opcode::VMOVDQU32 |
+ Opcode::VMOVDQU64 |
+ Opcode::VMOVDQU8 |
+ Opcode::VMOVHLPS |
+ Opcode::VMOVHPD |
+ Opcode::VMOVHPS |
+ Opcode::VMOVLHPS |
+ Opcode::VMOVLPD |
+ Opcode::VMOVLPS |
+ Opcode::VMOVMSKPD |
+ Opcode::VMOVMSKPS |
+ Opcode::VMOVNTDQ |
+ Opcode::VMOVNTDQA |
+ Opcode::VMOVNTPD |
+ Opcode::VMOVNTPS |
+ Opcode::VMOVQ |
+ Opcode::VMOVSD |
+ Opcode::VMOVSHDUP |
+ Opcode::VMOVSLDUP |
+ Opcode::VMOVSS |
+ Opcode::VMOVUPD |
+ Opcode::VMOVUPS |
+ Opcode::VPACKSSDW |
+ Opcode::VPACKSSWB |
+ Opcode::VPACKUSDW |
+ Opcode::VPACKUSWB |
+ Opcode::VPALIGNR |
+ Opcode::VPBLENDD |
+ Opcode::VPBLENDMB |
+ Opcode::VPBLENDMD |
+ Opcode::VPBLENDMQ |
+ Opcode::VPBLENDMW |
+ Opcode::VPBLENDVB |
+ Opcode::VPBLENDW |
+ Opcode::VPBROADCASTB |
+ Opcode::VPBROADCASTD |
+ Opcode::VPBROADCASTM |
+ Opcode::VPBROADCASTQ |
+ Opcode::VPBROADCASTW |
+ Opcode::VPCLMULQDQ |
+ Opcode::VPCOMPRESSD |
+ Opcode::VPCOMPRESSQ |
+ Opcode::VPERM2F128 |
+ Opcode::VPERM2I128 |
+ Opcode::VPERMD |
+ Opcode::VPERMI2B |
+ Opcode::VPERMI2D |
+ Opcode::VPERMI2PD |
+ Opcode::VPERMI2PS |
+ Opcode::VPERMI2Q |
+ Opcode::VPERMI2W |
+ Opcode::VPERMILPD |
+ Opcode::VPERMILPS |
+ Opcode::VPERMPD |
+ Opcode::VPERMPS |
+ Opcode::VPERMQ |
+ Opcode::VPERMT2D |
+ Opcode::VPERMT2PD |
+ Opcode::VPERMT2PS |
+ Opcode::VPERMT2Q |
+ Opcode::VPERMW |
+ Opcode::VPEXTRB |
+ Opcode::VPEXTRD |
+ Opcode::VPEXTRQ |
+ Opcode::VPEXTRW |
+ Opcode::VPGATHERDD |
+ Opcode::VPGATHERDQ |
+ Opcode::VPGATHERQD |
+ Opcode::VPGATHERQQ |
+ Opcode::VPHMINPOSUW |
+ Opcode::VPINSRB |
+ Opcode::VPINSRD |
+ Opcode::VPINSRQ |
+ Opcode::VPINSRW |
+ Opcode::VPMASKMOVD |
+ Opcode::VPMASKMOVQ |
+ Opcode::VPMOVB2D |
+ Opcode::VPMOVB2M |
+ Opcode::VPMOVM2B |
+ Opcode::VPMOVM2D |
+ Opcode::VPMOVM2Q |
+ Opcode::VPMOVM2W |
+ Opcode::VPMOVMSKB |
+ Opcode::VPMOVQ2M |
+ Opcode::VPMOVSDB |
+ Opcode::VPMOVSDW |
+ Opcode::VPMOVSQB |
+ Opcode::VPMOVSQD |
+ Opcode::VPMOVSQW |
+ Opcode::VPMOVSWB |
+ Opcode::VPMOVSXBD |
+ Opcode::VPMOVSXBQ |
+ Opcode::VPMOVSXBW |
+ Opcode::VPMOVSXDQ |
+ Opcode::VPMOVSXWD |
+ Opcode::VPMOVSXWQ |
+ Opcode::VPMOVUSDB |
+ Opcode::VPMOVUSDW |
+ Opcode::VPMOVUSQB |
+ Opcode::VPMOVUSQD |
+ Opcode::VPMOVUSQW |
+ Opcode::VPMOVUSWB |
+ Opcode::VPMOVW2M |
+ Opcode::VPMOVZXBD |
+ Opcode::VPMOVZXBQ |
+ Opcode::VPMOVZXBW |
+ Opcode::VPMOVZXDQ |
+ Opcode::VPMOVZXWD |
+ Opcode::VPMOVZXWQ |
+ Opcode::VPSCATTERDD |
+ Opcode::VPSCATTERDQ |
+ Opcode::VPSCATTERQD |
+ Opcode::VPSCATTERQQ |
+ Opcode::VPSHUFB |
+ Opcode::VPSHUFD |
+ Opcode::VPSHUFHW |
+ Opcode::VPSHUFLW |
+ Opcode::VPUNPCKHBW |
+ Opcode::VPUNPCKHDQ |
+ Opcode::VPUNPCKHQDQ |
+ Opcode::VPUNPCKHWD |
+ Opcode::VPUNPCKLBW |
+ Opcode::VPUNPCKLDQ |
+ Opcode::VPUNPCKLQDQ |
+ Opcode::VPUNPCKLWD |
+ Opcode::VREDUCEPD |
+ Opcode::VREDUCEPS |
+ Opcode::VREDUCESD |
+ Opcode::VREDUCESS |
+ Opcode::VSCATTERDD |
+ Opcode::VSCATTERDPD |
+ Opcode::VSCATTERDPS |
+ Opcode::VSCATTERDQ |
+ Opcode::VSCATTERPF0DPD |
+ Opcode::VSCATTERPF0DPS |
+ Opcode::VSCATTERPF0QPD |
+ Opcode::VSCATTERPF0QPS |
+ Opcode::VSCATTERPF1DPD |
+ Opcode::VSCATTERPF1DPS |
+ Opcode::VSCATTERPF1QPD |
+ Opcode::VSCATTERPF1QPS |
+ Opcode::VSCATTERQD |
+ Opcode::VSCATTERQPD |
+ Opcode::VSCATTERQPS |
+ Opcode::VSCATTERQQ |
+ Opcode::VSHUFF32X4 |
+ Opcode::VSHUFF64X2 |
+ Opcode::VSHUFI32X4 |
+ Opcode::VSHUFI64X2 |
+ Opcode::VSHUFPD |
+ Opcode::VSHUFPS |
+ Opcode::VUNPCKHPD |
+ Opcode::VUNPCKHPS |
+ Opcode::VUNPCKLPD |
+ Opcode::VUNPCKLPS |
+ Opcode::VZEROALL |
+ Opcode::VZEROUPPER |
+ Opcode::XCHG |
+ Opcode::XLAT => {
+ write!(out, "{}", colors.data_op(self))
+ }
+ Opcode::CMP |
+ Opcode::CMPPD |
+ Opcode::CMPPS |
+ Opcode::CMPS |
+ Opcode::CMPSD |
+ Opcode::CMPSS |
+ Opcode::CMPXCHG |
+ Opcode::CMPXCHG16B |
+ Opcode::CMPXCHG8B |
+ Opcode::FCOM |
+ Opcode::FCOMI |
+ Opcode::FCOMIP |
+ Opcode::FCOMP |
+ Opcode::FCOMPP |
+ Opcode::FICOM |
+ Opcode::FICOMP |
+ Opcode::FTST |
+ Opcode::FUCOM |
+ Opcode::FUCOMI |
+ Opcode::FUCOMIP |
+ Opcode::FUCOMP |
+ Opcode::FUCOMPP |
+ Opcode::FXAM |
+ Opcode::KORTESTB |
+ Opcode::KORTESTD |
+ Opcode::KORTESTQ |
+ Opcode::KORTESTW |
+ Opcode::KTESTB |
+ Opcode::KTESTD |
+ Opcode::KTESTQ |
+ Opcode::KTESTW |
+ Opcode::MAXPD |
+ Opcode::MAXPS |
+ Opcode::MAXSD |
+ Opcode::MAXSS |
+ Opcode::MINPD |
+ Opcode::MINPS |
+ Opcode::MINSD |
+ Opcode::MINSS |
+ Opcode::PCMPEQB |
+ Opcode::PCMPEQD |
+ Opcode::PCMPEQQ |
+ Opcode::PCMPEQW |
+ Opcode::PCMPESTRI |
+ Opcode::PCMPESTRM |
+ Opcode::PCMPGTB |
+ Opcode::PCMPGTD |
+ Opcode::PCMPGTQ |
+ Opcode::PCMPGTW |
+ Opcode::PCMPISTRI |
+ Opcode::PCMPISTRM |
+ Opcode::PFCMPEQ |
+ Opcode::PFCMPGE |
+ Opcode::PFCMPGT |
+ Opcode::PFMAX |
+ Opcode::PFMIN |
+ Opcode::PMAXSB |
+ Opcode::PMAXSD |
+ Opcode::PMAXSW |
+ Opcode::PMAXUB |
+ Opcode::PMAXUD |
+ Opcode::PMAXUW |
+ Opcode::PMINSB |
+ Opcode::PMINSD |
+ Opcode::PMINSW |
+ Opcode::PMINUB |
+ Opcode::PMINUD |
+ Opcode::PMINUW |
+ Opcode::PTEST |
+ Opcode::SCAS |
+ Opcode::TEST |
+ Opcode::VCMPPD |
+ Opcode::VCMPPS |
+ Opcode::VCMPSD |
+ Opcode::VCMPSS |
+ Opcode::VCOMISD |
+ Opcode::VCOMISS |
+ Opcode::VFPCLASSPD |
+ Opcode::VFPCLASSPS |
+ Opcode::VFPCLASSSD |
+ Opcode::VFPCLASSSS |
+ Opcode::VMAXPD |
+ Opcode::VMAXPS |
+ Opcode::VMAXSD |
+ Opcode::VMAXSS |
+ Opcode::VMINPD |
+ Opcode::VMINPS |
+ Opcode::VMINSD |
+ Opcode::VMINSS |
+ Opcode::VPCMPB |
+ Opcode::VPCMPD |
+ Opcode::VPCMPEQB |
+ Opcode::VPCMPEQD |
+ Opcode::VPCMPEQQ |
+ Opcode::VPCMPEQW |
+ Opcode::VPCMPESTRI |
+ Opcode::VPCMPESTRM |
+ Opcode::VPCMPGTB |
+ Opcode::VPCMPGTD |
+ Opcode::VPCMPGTQ |
+ Opcode::VPCMPGTW |
+ Opcode::VPCMPISTRI |
+ Opcode::VPCMPISTRM |
+ Opcode::VPCMPQ |
+ Opcode::VPCMPUB |
+ Opcode::VPCMPUD |
+ Opcode::VPCMPUQ |
+ Opcode::VPCMPUW |
+ Opcode::VPCMPW |
+ Opcode::VPCONFLICTD |
+ Opcode::VPCONFLICTQ |
+ Opcode::VPMAXSB |
+ Opcode::VPMAXSD |
+ Opcode::VPMAXSQ |
+ Opcode::VPMAXSW |
+ Opcode::VPMAXUB |
+ Opcode::VPMAXUD |
+ Opcode::VPMAXUQ |
+ Opcode::VPMAXUW |
+ Opcode::VPMINSB |
+ Opcode::VPMINSD |
+ Opcode::VPMINSQ |
+ Opcode::VPMINSW |
+ Opcode::VPMINUB |
+ Opcode::VPMINUD |
+ Opcode::VPMINUQ |
+ Opcode::VPMINUW |
+ Opcode::VPTERNLOGD |
+ Opcode::VPTERNLOGQ |
+ Opcode::VPTEST |
+ Opcode::VPTESTMB |
+ Opcode::VPTESTMD |
+ Opcode::VPTESTMQ |
+ Opcode::VPTESTMW |
+ Opcode::VPTESTNMB |
+ Opcode::VPTESTNMD |
+ Opcode::VPTESTNMQ |
+ Opcode::VPTESTNMW |
+ Opcode::VRANGEPD |
+ Opcode::VRANGEPS |
+ Opcode::VRANGESD |
+ Opcode::VRANGESS |
+ Opcode::VTESTPD |
+ Opcode::VTESTPS |
+ Opcode::VUCOMISD |
+ Opcode::VUCOMISS => {
+ write!(out, "{}", colors.comparison_op(self))
+ }
+ Opcode::AAA |
+ Opcode::AAD |
+ Opcode::AAM |
+ Opcode::AAS |
+ Opcode::ADC |
+ Opcode::ADCX |
+ Opcode::ADD |
+ Opcode::ADDPD |
+ Opcode::ADDPS |
+ Opcode::ADDSD |
+ Opcode::ADDSS |
+ Opcode::ADDSUBPD |
+ Opcode::ADDSUBPS |
+ Opcode::ADOX |
+ Opcode::AND |
+ Opcode::ANDN |
+ Opcode::ANDNPD |
+ Opcode::ANDNPS |
+ Opcode::ANDPD |
+ Opcode::ANDPS |
+ Opcode::BEXTR |
+ Opcode::BLSI |
+ Opcode::BLSMSK |
+ Opcode::BLSR |
+ Opcode::BSF |
+ Opcode::BSR |
+ Opcode::BT |
+ Opcode::BTC |
+ Opcode::BTR |
+ Opcode::BTS |
+ Opcode::BZHI |
+ Opcode::COMISD |
+ Opcode::COMISS |
+ Opcode::DAA |
+ Opcode::DAS |
+ Opcode::DEC |
+ Opcode::DIV |
+ Opcode::DIVPD |
+ Opcode::DIVPS |
+ Opcode::DIVSD |
+ Opcode::DIVSS |
+ Opcode::DPPD |
+ Opcode::DPPS |
+ Opcode::F2XM1 |
+ Opcode::FABS |
+ Opcode::FADD |
+ Opcode::FADDP |
+ Opcode::FCHS |
+ Opcode::FCOS |
+ Opcode::FDIV |
+ Opcode::FDIVP |
+ Opcode::FDIVR |
+ Opcode::FDIVRP |
+ Opcode::FIADD |
+ Opcode::FIDIV |
+ Opcode::FIDIVR |
+ Opcode::FIMUL |
+ Opcode::FISUB |
+ Opcode::FISUBR |
+ Opcode::FMUL |
+ Opcode::FMULP |
+ Opcode::FNCLEX |
+ Opcode::FNINIT |
+ Opcode::FPATAN |
+ Opcode::FPREM |
+ Opcode::FPREM1 |
+ Opcode::FPTAN |
+ Opcode::FRNDINT |
+ Opcode::FSCALE |
+ Opcode::FSIN |
+ Opcode::FSINCOS |
+ Opcode::FSQRT |
+ Opcode::FSUB |
+ Opcode::FSUBP |
+ Opcode::FSUBR |
+ Opcode::FSUBRP |
+ Opcode::FXTRACT |
+ Opcode::FYL2X |
+ Opcode::FYL2XP1 |
+ Opcode::HADDPD |
+ Opcode::HADDPS |
+ Opcode::HSUBPD |
+ Opcode::HSUBPS |
+ Opcode::IDIV |
+ Opcode::IMUL |
+ Opcode::INC |
+ Opcode::KADDB |
+ Opcode::KADDD |
+ Opcode::KADDQ |
+ Opcode::KADDW |
+ Opcode::KANDB |
+ Opcode::KANDD |
+ Opcode::KANDNB |
+ Opcode::KANDND |
+ Opcode::KANDNQ |
+ Opcode::KANDNW |
+ Opcode::KANDQ |
+ Opcode::KANDW |
+ Opcode::KNOTB |
+ Opcode::KNOTD |
+ Opcode::KNOTQ |
+ Opcode::KNOTW |
+ Opcode::KORB |
+ Opcode::KORD |
+ Opcode::KORQ |
+ Opcode::KORW |
+ Opcode::KSHIFTLB |
+ Opcode::KSHIFTLD |
+ Opcode::KSHIFTLQ |
+ Opcode::KSHIFTLW |
+ Opcode::KSHIFTRB |
+ Opcode::KSHIFTRD |
+ Opcode::KSHIFTRQ |
+ Opcode::KSHIFTRW |
+ Opcode::KXNORB |
+ Opcode::KXNORD |
+ Opcode::KXNORQ |
+ Opcode::KXNORW |
+ Opcode::KXORB |
+ Opcode::KXORD |
+ Opcode::KXORQ |
+ Opcode::KXORW |
+ Opcode::LEA |
+ Opcode::LZCNT |
+ Opcode::MPSADBW |
+ Opcode::MUL |
+ Opcode::MULPD |
+ Opcode::MULPS |
+ Opcode::MULSD |
+ Opcode::MULSS |
+ Opcode::MULX |
+ Opcode::NEG |
+ Opcode::NOT |
+ Opcode::OR |
+ Opcode::ORPD |
+ Opcode::ORPS |
+ Opcode::PABSB |
+ Opcode::PABSD |
+ Opcode::PABSW |
+ Opcode::PADDB |
+ Opcode::PADDD |
+ Opcode::PADDQ |
+ Opcode::PADDSB |
+ Opcode::PADDSW |
+ Opcode::PADDUSB |
+ Opcode::PADDUSW |
+ Opcode::PADDW |
+ Opcode::PAND |
+ Opcode::PANDN |
+ Opcode::PAVGB |
+ Opcode::PAVGUSB |
+ Opcode::PAVGW |
+ Opcode::PCLMULQDQ |
+ Opcode::PDEP |
+ Opcode::PEXT |
+ Opcode::PFACC |
+ Opcode::PFADD |
+ Opcode::PFMUL |
+ Opcode::PFMULHRW |
+ Opcode::PFNACC |
+ Opcode::PFPNACC |
+ Opcode::PFRCP |
+ Opcode::PFRCPIT1 |
+ Opcode::PFRCPIT2 |
+ Opcode::PFRSQIT1 |
+ Opcode::PFRSQRT |
+ Opcode::PFSUB |
+ Opcode::PFSUBR |
+ Opcode::PHADDD |
+ Opcode::PHADDSW |
+ Opcode::PHADDW |
+ Opcode::PHSUBD |
+ Opcode::PHSUBSW |
+ Opcode::PHSUBW |
+ Opcode::PMADDUBSW |
+ Opcode::PMADDWD |
+ Opcode::PMULDQ |
+ Opcode::PMULHRSW |
+ Opcode::PMULHRW |
+ Opcode::PMULHUW |
+ Opcode::PMULHW |
+ Opcode::PMULLD |
+ Opcode::PMULLW |
+ Opcode::PMULUDQ |
+ Opcode::POPCNT |
+ Opcode::POR |
+ Opcode::PSADBW |
+ Opcode::PSHUFB |
+ Opcode::PSHUFD |
+ Opcode::PSHUFW |
+ Opcode::PSIGNB |
+ Opcode::PSIGND |
+ Opcode::PSIGNW |
+ Opcode::PSLLD |
+ Opcode::PSLLDQ |
+ Opcode::PSLLQ |
+ Opcode::PSLLW |
+ Opcode::PSRAD |
+ Opcode::PSRAW |
+ Opcode::PSRLD |
+ Opcode::PSRLDQ |
+ Opcode::PSRLQ |
+ Opcode::PSRLW |
+ Opcode::PSUBB |
+ Opcode::PSUBD |
+ Opcode::PSUBQ |
+ Opcode::PSUBSB |
+ Opcode::PSUBSW |
+ Opcode::PSUBUSB |
+ Opcode::PSUBUSW |
+ Opcode::PSUBW |
+ Opcode::PSWAPD |
+ Opcode::PXOR |
+ Opcode::RCL |
+ Opcode::RCPPS |
+ Opcode::RCPSS |
+ Opcode::RCR |
+ Opcode::ROL |
+ Opcode::ROR |
+ Opcode::RORX |
+ Opcode::ROUNDPD |
+ Opcode::ROUNDPS |
+ Opcode::ROUNDSD |
+ Opcode::ROUNDSS |
+ Opcode::RSQRTPS |
+ Opcode::RSQRTSS |
+ Opcode::SAL |
+ Opcode::SAR |
+ Opcode::SARX |
+ Opcode::SBB |
+ Opcode::SHL |
+ Opcode::SHLD |
+ Opcode::SHLX |
+ Opcode::SHR |
+ Opcode::SHRD |
+ Opcode::SHRX |
+ Opcode::SLHD |
+ Opcode::SQRTPD |
+ Opcode::SQRTPS |
+ Opcode::SQRTSD |
+ Opcode::SQRTSS |
+ Opcode::SUB |
+ Opcode::SUBPD |
+ Opcode::SUBPS |
+ Opcode::SUBSD |
+ Opcode::SUBSS |
+ Opcode::TZCNT |
+ Opcode::UCOMISD |
+ Opcode::UCOMISS |
+ Opcode::V4FMADDPS |
+ Opcode::V4FMADDSS |
+ Opcode::V4FNMADDPS |
+ Opcode::V4FNMADDSS |
+ Opcode::VADDPD |
+ Opcode::VADDPS |
+ Opcode::VADDSD |
+ Opcode::VADDSS |
+ Opcode::VADDSUBPD |
+ Opcode::VADDSUBPS |
+ Opcode::VANDNPD |
+ Opcode::VANDNPS |
+ Opcode::VANDPD |
+ Opcode::VANDPS |
+ Opcode::VBROADCASTF32X2 |
+ Opcode::VBROADCASTF32X4 |
+ Opcode::VBROADCASTF32X8 |
+ Opcode::VBROADCASTF64X2 |
+ Opcode::VBROADCASTF64X4 |
+ Opcode::VBROADCASTI32X2 |
+ Opcode::VBROADCASTI32X4 |
+ Opcode::VBROADCASTI32X8 |
+ Opcode::VBROADCASTI64X2 |
+ Opcode::VBROADCASTI64X4 |
+ Opcode::VCVTNE2PS2BF16 |
+ Opcode::VCVTNEPS2BF16 |
+ Opcode::VCVTUSI2SD |
+ Opcode::VCVTUSI2SS |
+ Opcode::VDBPSADBW |
+ Opcode::VDIVPD |
+ Opcode::VDIVPS |
+ Opcode::VDIVSD |
+ Opcode::VDIVSS |
+ Opcode::VDPBF16PS |
+ Opcode::VDPPD |
+ Opcode::VDPPS |
+ Opcode::VEXP2PD |
+ Opcode::VEXP2PS |
+ Opcode::VEXP2SD |
+ Opcode::VEXP2SS |
+ Opcode::VEXTRACTF32X8 |
+ Opcode::VEXTRACTI32X8 |
+ Opcode::VFMADD132PD |
+ Opcode::VFMADD132PS |
+ Opcode::VFMADD132SD |
+ Opcode::VFMADD132SS |
+ Opcode::VFMADD213PD |
+ Opcode::VFMADD213PS |
+ Opcode::VFMADD213SD |
+ Opcode::VFMADD213SS |
+ Opcode::VFMADD231PD |
+ Opcode::VFMADD231PS |
+ Opcode::VFMADD231SD |
+ Opcode::VFMADD231SS |
+ Opcode::VFMADDSUB132PD |
+ Opcode::VFMADDSUB132PS |
+ Opcode::VFMADDSUB213PD |
+ Opcode::VFMADDSUB213PS |
+ Opcode::VFMADDSUB231PD |
+ Opcode::VFMADDSUB231PS |
+ Opcode::VFMSUB132PD |
+ Opcode::VFMSUB132PS |
+ Opcode::VFMSUB132SD |
+ Opcode::VFMSUB132SS |
+ Opcode::VFMSUB213PD |
+ Opcode::VFMSUB213PS |
+ Opcode::VFMSUB213SD |
+ Opcode::VFMSUB213SS |
+ Opcode::VFMSUB231PD |
+ Opcode::VFMSUB231PS |
+ Opcode::VFMSUB231SD |
+ Opcode::VFMSUB231SS |
+ Opcode::VFMSUBADD132PD |
+ Opcode::VFMSUBADD132PS |
+ Opcode::VFMSUBADD213PD |
+ Opcode::VFMSUBADD213PS |
+ Opcode::VFMSUBADD231PD |
+ Opcode::VFMSUBADD231PS |
+ Opcode::VFNMADD132PD |
+ Opcode::VFNMADD132PS |
+ Opcode::VFNMADD132SD |
+ Opcode::VFNMADD132SS |
+ Opcode::VFNMADD213PD |
+ Opcode::VFNMADD213PS |
+ Opcode::VFNMADD213SD |
+ Opcode::VFNMADD213SS |
+ Opcode::VFNMADD231PD |
+ Opcode::VFNMADD231PS |
+ Opcode::VFNMADD231SD |
+ Opcode::VFNMADD231SS |
+ Opcode::VFNMSUB132PD |
+ Opcode::VFNMSUB132PS |
+ Opcode::VFNMSUB132SD |
+ Opcode::VFNMSUB132SS |
+ Opcode::VFNMSUB213PD |
+ Opcode::VFNMSUB213PS |
+ Opcode::VFNMSUB213SD |
+ Opcode::VFNMSUB213SS |
+ Opcode::VFNMSUB231PD |
+ Opcode::VFNMSUB231PS |
+ Opcode::VFNMSUB231SD |
+ Opcode::VFNMSUB231SS |
+ Opcode::VGF2P8AFFINEINVQB |
+ Opcode::VGF2P8AFFINEQB |
+ Opcode::VGF2P8MULB |
+ Opcode::VHADDPD |
+ Opcode::VHADDPS |
+ Opcode::VHSUBPD |
+ Opcode::VHSUBPS |
+ Opcode::VINSERTF32X8 |
+ Opcode::VINSERTI32X4 |
+ Opcode::VINSERTI32X8 |
+ Opcode::VMPSADBW |
+ Opcode::VMULPD |
+ Opcode::VMULPS |
+ Opcode::VMULSD |
+ Opcode::VMULSS |
+ Opcode::VORPD |
+ Opcode::VORPS |
+ Opcode::VP2INTERSECTD |
+ Opcode::VP2INTERSECTQ |
+ Opcode::VP4DPWSSD |
+ Opcode::VP4DPWSSDS |
+ Opcode::VPABSB |
+ Opcode::VPABSD |
+ Opcode::VPABSQ |
+ Opcode::VPABSW |
+ Opcode::VPADDB |
+ Opcode::VPADDD |
+ Opcode::VPADDQ |
+ Opcode::VPADDSB |
+ Opcode::VPADDSW |
+ Opcode::VPADDUSB |
+ Opcode::VPADDUSW |
+ Opcode::VPADDW |
+ Opcode::VPAND |
+ Opcode::VPANDD |
+ Opcode::VPANDN |
+ Opcode::VPANDND |
+ Opcode::VPANDNQ |
+ Opcode::VPANDQ |
+ Opcode::VPAVGB |
+ Opcode::VPAVGW |
+ Opcode::VPBROADCASTMB2Q |
+ Opcode::VPBROADCASTMW2D |
+ Opcode::VPCOMPRESSB |
+ Opcode::VPCOMPRESSW |
+ Opcode::VPDPBUSD |
+ Opcode::VPDPBUSDS |
+ Opcode::VPDPWSSD |
+ Opcode::VPDPWSSDS |
+ Opcode::VPERMB |
+ Opcode::VPERMT2B |
+ Opcode::VPERMT2W |
+ Opcode::VPEXPANDB |
+ Opcode::VPEXPANDD |
+ Opcode::VPEXPANDQ |
+ Opcode::VPEXPANDW |
+ Opcode::VPHADDD |
+ Opcode::VPHADDSW |
+ Opcode::VPHADDW |
+ Opcode::VPHSUBD |
+ Opcode::VPHSUBSW |
+ Opcode::VPHSUBW |
+ Opcode::VPLZCNTD |
+ Opcode::VPLZCNTQ |
+ Opcode::VPMADD52HUQ |
+ Opcode::VPMADD52LUQ |
+ Opcode::VPMADDUBSW |
+ Opcode::VPMADDWD |
+ Opcode::VPMOVD2M |
+ Opcode::VPMOVDB |
+ Opcode::VPMOVDW |
+ Opcode::VPMOVQB |
+ Opcode::VPMOVQD |
+ Opcode::VPMOVQW |
+ Opcode::VPMOVWB |
+ Opcode::VPMULDQ |
+ Opcode::VPMULHRSW |
+ Opcode::VPMULHUW |
+ Opcode::VPMULHW |
+ Opcode::VPMULLD |
+ Opcode::VPMULLQ |
+ Opcode::VPMULLW |
+ Opcode::VPMULTISHIFTQB |
+ Opcode::VPMULUDQ |
+ Opcode::VPOPCNTB |
+ Opcode::VPOPCNTD |
+ Opcode::VPOPCNTQ |
+ Opcode::VPOPCNTW |
+ Opcode::VPOR |
+ Opcode::VPORD |
+ Opcode::VPORQ |
+ Opcode::VPROLD |
+ Opcode::VPROLQ |
+ Opcode::VPROLVD |
+ Opcode::VPROLVQ |
+ Opcode::VPRORD |
+ Opcode::VPRORQ |
+ Opcode::VPRORRD |
+ Opcode::VPRORRQ |
+ Opcode::VPRORVD |
+ Opcode::VPRORVQ |
+ Opcode::VPSADBW |
+ Opcode::VPSHLDD |
+ Opcode::VPSHLDQ |
+ Opcode::VPSHLDVD |
+ Opcode::VPSHLDVQ |
+ Opcode::VPSHLDVW |
+ Opcode::VPSHLDW |
+ Opcode::VPSHRDD |
+ Opcode::VPSHRDQ |
+ Opcode::VPSHRDVD |
+ Opcode::VPSHRDVQ |
+ Opcode::VPSHRDVW |
+ Opcode::VPSHRDW |
+ Opcode::VPSHUFBITQMB |
+ Opcode::VPSIGNB |
+ Opcode::VPSIGND |
+ Opcode::VPSIGNW |
+ Opcode::VPSLLD |
+ Opcode::VPSLLDQ |
+ Opcode::VPSLLQ |
+ Opcode::VPSLLVD |
+ Opcode::VPSLLVQ |
+ Opcode::VPSLLVW |
+ Opcode::VPSLLW |
+ Opcode::VPSRAD |
+ Opcode::VPSRAQ |
+ Opcode::VPSRAVD |
+ Opcode::VPSRAVQ |
+ Opcode::VPSRAVW |
+ Opcode::VPSRAW |
+ Opcode::VPSRLD |
+ Opcode::VPSRLDQ |
+ Opcode::VPSRLQ |
+ Opcode::VPSRLVD |
+ Opcode::VPSRLVQ |
+ Opcode::VPSRLVW |
+ Opcode::VPSRLW |
+ Opcode::VPSUBB |
+ Opcode::VPSUBD |
+ Opcode::VPSUBQ |
+ Opcode::VPSUBSB |
+ Opcode::VPSUBSW |
+ Opcode::VPSUBUSB |
+ Opcode::VPSUBUSW |
+ Opcode::VPSUBW |
+ Opcode::VPXOR |
+ Opcode::VPXORD |
+ Opcode::VPXORQ |
+ Opcode::VRCP14PD |
+ Opcode::VRCP14PS |
+ Opcode::VRCP14SD |
+ Opcode::VRCP14SS |
+ Opcode::VRCP28PD |
+ Opcode::VRCP28PS |
+ Opcode::VRCP28SD |
+ Opcode::VRCP28SS |
+ Opcode::VRCPPS |
+ Opcode::VRCPSS |
+ Opcode::VRNDSCALEPD |
+ Opcode::VRNDSCALEPS |
+ Opcode::VRNDSCALESD |
+ Opcode::VRNDSCALESS |
+ Opcode::VROUNDPD |
+ Opcode::VROUNDPS |
+ Opcode::VROUNDSD |
+ Opcode::VROUNDSS |
+ Opcode::VRSQRT14PD |
+ Opcode::VRSQRT14PS |
+ Opcode::VRSQRT14SD |
+ Opcode::VRSQRT14SS |
+ Opcode::VRSQRT28PD |
+ Opcode::VRSQRT28PS |
+ Opcode::VRSQRT28SD |
+ Opcode::VRSQRT28SS |
+ Opcode::VRSQRTPS |
+ Opcode::VRSQRTSS |
+ Opcode::VSCALEDPD |
+ Opcode::VSCALEDPS |
+ Opcode::VSCALEDSD |
+ Opcode::VSCALEDSS |
+ Opcode::VSCALEFPD |
+ Opcode::VSCALEFPS |
+ Opcode::VSCALEFSD |
+ Opcode::VSCALEFSS |
+ Opcode::VSQRTPD |
+ Opcode::VSQRTPS |
+ Opcode::VSQRTSD |
+ Opcode::VSQRTSS |
+ Opcode::VSUBPD |
+ Opcode::VSUBPS |
+ Opcode::VSUBSD |
+ Opcode::VSUBSS |
+ Opcode::VXORPD |
+ Opcode::VXORPS |
+ Opcode::XADD |
+ Opcode::XOR |
+ Opcode::XORPD |
+ Opcode::XORPS => {
+ write!(out, "{}", colors.arithmetic_op(self))
+ }
+ Opcode::Invalid |
+ Opcode::UD0 |
+ Opcode::UD1 |
+ Opcode::UD2 => {
+ write!(out, "{}", colors.invalid_op(self))
+ }
+ Opcode::HLT |
+ Opcode::INT |
+ Opcode::INTO |
+ Opcode::IRET |
+ Opcode::IRETD |
+ Opcode::IRETQ |
+ Opcode::RETF |
+ Opcode::RETURN => {
+ write!(out, "{}", colors.stop_op(self))
+ }
+ Opcode::AESDEC |
+ Opcode::AESDEC128KL |
+ Opcode::AESDEC256KL |
+ Opcode::AESDECLAST |
+ Opcode::AESDECWIDE128KL |
+ Opcode::AESDECWIDE256KL |
+ Opcode::AESENC |
+ Opcode::AESENC128KL |
+ Opcode::AESENC256KL |
+ Opcode::AESENCLAST |
+ Opcode::AESENCWIDE128KL |
+ Opcode::AESENCWIDE256KL |
+ Opcode::AESIMC |
+ Opcode::AESKEYGENASSIST |
+ Opcode::CLRSSBSY |
+ Opcode::CRC32 |
+ Opcode::ENCODEKEY128 |
+ Opcode::ENCODEKEY256 |
+ Opcode::ENDBR32 |
+ Opcode::ENDBR64 |
+ Opcode::FDECSTP |
+ Opcode::FFREE |
+ Opcode::FFREEP |
+ Opcode::FINCSTP |
+ Opcode::GF2P8AFFINEINVQB |
+ Opcode::GF2P8AFFINEQB |
+ Opcode::GF2P8MULB |
+ Opcode::HRESET |
+ Opcode::INCSSP |
+ Opcode::LOADIWKEY |
+ Opcode::RDRAND |
+ Opcode::RDSEED |
+ Opcode::RSTORSSP |
+ Opcode::SAVEPREVSSP |
+ Opcode::SETSSBSY |
+ Opcode::SHA1MSG1 |
+ Opcode::SHA1MSG2 |
+ Opcode::SHA1NEXTE |
+ Opcode::SHA1RNDS4 |
+ Opcode::SHA256MSG1 |
+ Opcode::SHA256MSG2 |
+ Opcode::SHA256RNDS2 |
+ Opcode::VAESDEC |
+ Opcode::VAESDECLAST |
+ Opcode::VAESENC |
+ Opcode::VAESENCLAST |
+ Opcode::VAESIMC |
+ Opcode::VAESKEYGENASSIST |
+ Opcode::WRSS |
+ Opcode::WRUSS => {
+ write!(out, "{}", colors.misc_op(self))
+ }
+ Opcode::CALL |
+ Opcode::CALLF |
+ Opcode::JA |
+ Opcode::JB |
+ Opcode::JCXZ |
+ Opcode::JECXZ |
+ Opcode::JG |
+ Opcode::JGE |
+ Opcode::JL |
+ Opcode::JLE |
+ Opcode::JMP |
+ Opcode::JMPF |
+ Opcode::JNA |
+ Opcode::JNB |
+ Opcode::JNO |
+ Opcode::JNP |
+ Opcode::JNS |
+ Opcode::JNZ |
+ Opcode::JO |
+ Opcode::JP |
+ Opcode::JRCXZ |
+ Opcode::JS |
+ Opcode::JZ |
+ Opcode::LOOP |
+ Opcode::LOOPNZ |
+ Opcode::LOOPZ => {
+ write!(out, "{}", colors.control_flow_op(self))
+ }
+ }
+ }
+}
+
pub(crate) mod real_mode {
use crate::generated::real_mode::Opcode;
use crate::real_mode::{InstDecoder, Instruction, DecodeError};
+
+ use yaxpeax_arch::{Colorize, YaxColors};
+ use core::fmt;
impl InstDecoder {
fn feature_sgx(&self) -> bool {
true
@@ -321,6 +1794,16 @@ pub(crate) mod real_mode {
true
}
}
+ impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
+ fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
+ self.to_generic().colorize(colors, out)
+ }
+ }
+ impl Opcode {
+ pub(crate) fn name(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
pub(crate) fn revise_instruction(decoder: &InstDecoder, inst: &mut Instruction) -> Result<(), DecodeError> {
if inst.prefixes.evex().is_some() {
if !decoder.avx512() {
@@ -359,7 +1842,6 @@ pub(crate) mod real_mode {
}
}
- Opcode::VPMAXUB |
Opcode::VPMAXUB => {
if !decoder.feature_avx_unimplemented() {
return Err(DecodeError::InvalidOpcode);
@@ -2416,6 +3898,9 @@ pub(crate) mod real_mode {
pub(crate) mod protected_mode {
use crate::generated::protected_mode::Opcode;
use crate::protected_mode::{InstDecoder, Instruction, DecodeError};
+
+ use yaxpeax_arch::{Colorize, YaxColors};
+ use core::fmt;
impl InstDecoder {
fn feature_sgx(&self) -> bool {
true
@@ -2736,6 +4221,16 @@ pub(crate) mod protected_mode {
true
}
}
+ impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
+ fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
+ self.to_generic().colorize(colors, out)
+ }
+ }
+ impl Opcode {
+ pub(crate) fn name(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
pub(crate) fn revise_instruction(decoder: &InstDecoder, inst: &mut Instruction) -> Result<(), DecodeError> {
if inst.prefixes.evex().is_some() {
if !decoder.avx512() {
@@ -2774,7 +4269,6 @@ pub(crate) mod protected_mode {
}
}
- Opcode::VPMAXUB |
Opcode::VPMAXUB => {
if !decoder.feature_avx_unimplemented() {
return Err(DecodeError::InvalidOpcode);
@@ -4831,6 +6325,9 @@ pub(crate) mod protected_mode {
pub(crate) mod long_mode {
use crate::generated::long_mode::Opcode;
use crate::long_mode::{InstDecoder, Instruction, DecodeError};
+
+ use yaxpeax_arch::{Colorize, YaxColors};
+ use core::fmt;
impl InstDecoder {
fn feature_sgx(&self) -> bool {
true
@@ -5157,6 +6654,16 @@ pub(crate) mod long_mode {
true
}
}
+ impl<T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
+ fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
+ self.to_generic().colorize(colors, out)
+ }
+ }
+ impl Opcode {
+ pub(crate) fn name(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
pub(crate) fn revise_instruction(decoder: &InstDecoder, inst: &mut Instruction) -> Result<(), DecodeError> {
if inst.prefixes.evex().is_some() {
if !decoder.avx512() {
@@ -5195,7 +6702,6 @@ pub(crate) mod long_mode {
}
}
- Opcode::VPMAXUB |
Opcode::VPMAXUB => {
if !decoder.feature_avx_unimplemented() {
return Err(DecodeError::InvalidOpcode);
diff --git a/src/generated/opcode.rs b/src/generated/opcode.rs
index cc573f1..5fa5892 100644
--- a/src/generated/opcode.rs
+++ b/src/generated/opcode.rs
@@ -1,3 +1,5 @@
+use crate::safer_unchecked::GetSaferUnchecked;
+
#[allow(non_camel_case_types)]
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
#[non_exhaustive]
@@ -2874,6 +2876,16 @@ pub(crate) const MNEMONICS: &'static [&'static str] = &[
"xtest",
];
+impl Opcode {
+ pub(crate) fn name(&self) -> &'static str {
+ // safety: `MNEMONICS` and `Opcode` are generated together, where every entry in `Opcode` guarantees
+ // a corresponding entry in `MNEMONICS`.
+ unsafe {
+ MNEMONICS.get_kinda_unchecked(*self as usize)
+ }
+ }
+}
+
pub(crate) mod real_mode {
#[allow(non_camel_case_types)]
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
@@ -4312,6 +4324,18 @@ pub(crate) mod real_mode {
XSUSLDTRK = super::Opcode::XSUSLDTRK as u16,
XTEST = super::Opcode::XTEST as u16,
}
+
+ impl Opcode {
+ pub fn to_generic(&self) -> super::Opcode {
+ // safety: each item in `Self` is defined with the same value in `super::Opcode`. `Self` is
+ // a subset of `super::Opcode` so casting to the more generic form is well-defined.
+ unsafe { core::mem::transmute::<Self, super::Opcode>(*self) }
+ }
+
+ fn nane(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
}
pub(crate) mod protected_mode {
@@ -5752,6 +5776,18 @@ pub(crate) mod protected_mode {
XSUSLDTRK = super::Opcode::XSUSLDTRK as u16,
XTEST = super::Opcode::XTEST as u16,
}
+
+ impl Opcode {
+ pub fn to_generic(&self) -> super::Opcode {
+ // safety: each item in `Self` is defined with the same value in `super::Opcode`. `Self` is
+ // a subset of `super::Opcode` so casting to the more generic form is well-defined.
+ unsafe { core::mem::transmute::<Self, super::Opcode>(*self) }
+ }
+
+ fn nane(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
}
pub(crate) mod long_mode {
@@ -7182,5 +7218,17 @@ pub(crate) mod long_mode {
XSUSLDTRK = super::Opcode::XSUSLDTRK as u16,
XTEST = super::Opcode::XTEST as u16,
}
+
+ impl Opcode {
+ pub fn to_generic(&self) -> super::Opcode {
+ // safety: each item in `Self` is defined with the same value in `super::Opcode`. `Self` is
+ // a subset of `super::Opcode` so casting to the more generic form is well-defined.
+ unsafe { core::mem::transmute::<Self, super::Opcode>(*self) }
+ }
+
+ fn nane(&self) -> &'static str {
+ self.to_generic().name()
+ }
+ }
}
diff --git a/src/long_mode/display.rs b/src/long_mode/display.rs
index d772b7b..4022c7b 100644
--- a/src/long_mode/display.rs
+++ b/src/long_mode/display.rs
@@ -350,1452 +350,6 @@ impl fmt::Display for Opcode {
}
}
-impl Opcode {
- fn name(&self) -> &'static str {
- unsafe {
- crate::generated::opcode::MNEMONICS.get_kinda_unchecked(*self as usize)
- }
- }
-}
-
-impl <T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
- fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
- match self {
- Opcode::VGF2P8AFFINEQB |
- Opcode::VGF2P8AFFINEINVQB |
- Opcode::VPSHRDQ |
- Opcode::VPSHRDD |
- Opcode::VPSHRDW |
- Opcode::VPSHLDQ |
- Opcode::VPSHLDD |
- Opcode::VPSHLDW |
- Opcode::VBROADCASTF32X8 |
- Opcode::VBROADCASTF64X4 |
- Opcode::VBROADCASTF32X4 |
- Opcode::VBROADCASTF64X2 |
- Opcode::VBROADCASTF32X2 |
- Opcode::VBROADCASTI32X8 |
- Opcode::VBROADCASTI64X4 |
- Opcode::VBROADCASTI32X4 |
- Opcode::VBROADCASTI64X2 |
- Opcode::VBROADCASTI32X2 |
- Opcode::VEXTRACTI32X8 |
- Opcode::VEXTRACTF32X8 |
- Opcode::VINSERTI32X8 |
- Opcode::VINSERTF32X8 |
- Opcode::VINSERTI32X4 |
- Opcode::V4FNMADDSS |
- Opcode::V4FNMADDPS |
- Opcode::VCVTNEPS2BF16 |
- Opcode::V4FMADDSS |
- Opcode::V4FMADDPS |
- Opcode::VCVTNE2PS2BF16 |
- Opcode::VP2INTERSECTD |
- Opcode::VP2INTERSECTQ |
- Opcode::VP4DPWSSDS |
- Opcode::VP4DPWSSD |
- Opcode::VPDPWSSDS |
- Opcode::VPDPWSSD |
- Opcode::VPDPBUSDS |
- Opcode::VDPBF16PS |
- Opcode::VPBROADCASTMW2D |
- Opcode::VPBROADCASTMB2Q |
- Opcode::VPMOVD2M |
- Opcode::VPMOVQD |
- Opcode::VPMOVWB |
- Opcode::VPMOVDB |
- Opcode::VPMOVDW |
- Opcode::VPMOVQB |
- Opcode::VPMOVQW |
- Opcode::VGF2P8MULB |
- Opcode::VPMADD52HUQ |
- Opcode::VPMADD52LUQ |
- Opcode::VPSHUFBITQMB |
- Opcode::VPERMB |
- Opcode::VPEXPANDD |
- Opcode::VPEXPANDQ |
- Opcode::VPABSQ |
- Opcode::VPRORVD |
- Opcode::VPRORVQ |
- Opcode::VPMULTISHIFTQB |
- Opcode::VPERMT2B |
- Opcode::VPERMT2W |
- Opcode::VPSHRDVQ |
- Opcode::VPSHRDVD |
- Opcode::VPSHRDVW |
- Opcode::VPSHLDVQ |
- Opcode::VPSHLDVD |
- Opcode::VPSHLDVW |
- Opcode::VPCOMPRESSB |
- Opcode::VPCOMPRESSW |
- Opcode::VPEXPANDB |
- Opcode::VPEXPANDW |
- Opcode::VPOPCNTD |
- Opcode::VPOPCNTQ |
- Opcode::VPOPCNTB |
- Opcode::VPOPCNTW |
- Opcode::VSCALEFSS |
- Opcode::VSCALEFSD |
- Opcode::VSCALEFPS |
- Opcode::VSCALEFPD |
- Opcode::VPDPBUSD |
- Opcode::VCVTUSI2SD |
- Opcode::VCVTUSI2SS |
- Opcode::VPXORD |
- Opcode::VPXORQ |
- Opcode::VPORD |
- Opcode::VPORQ |
- Opcode::VPANDND |
- Opcode::VPANDNQ |
- Opcode::VPANDD |
- Opcode::VPANDQ |
-
- Opcode::VHADDPS |
- Opcode::VHSUBPS |
- Opcode::VADDSUBPS |
- Opcode::VADDPD |
- Opcode::VADDPS |
- Opcode::VADDSD |
- Opcode::VADDSS |
- Opcode::VADDSUBPD |
- Opcode::VFMADD132PD |
- Opcode::VFMADD132PS |
- Opcode::VFMADD132SD |
- Opcode::VFMADD132SS |
- Opcode::VFMADD213PD |
- Opcode::VFMADD213PS |
- Opcode::VFMADD213SD |
- Opcode::VFMADD213SS |
- Opcode::VFMADD231PD |
- Opcode::VFMADD231PS |
- Opcode::VFMADD231SD |
- Opcode::VFMADD231SS |
- Opcode::VFMADDSUB132PD |
- Opcode::VFMADDSUB132PS |
- Opcode::VFMADDSUB213PD |
- Opcode::VFMADDSUB213PS |
- Opcode::VFMADDSUB231PD |
- Opcode::VFMADDSUB231PS |
- Opcode::VFMSUB132PD |
- Opcode::VFMSUB132PS |
- Opcode::VFMSUB132SD |
- Opcode::VFMSUB132SS |
- Opcode::VFMSUB213PD |
- Opcode::VFMSUB213PS |
- Opcode::VFMSUB213SD |
- Opcode::VFMSUB213SS |
- Opcode::VFMSUB231PD |
- Opcode::VFMSUB231PS |
- Opcode::VFMSUB231SD |
- Opcode::VFMSUB231SS |
- Opcode::VFMSUBADD132PD |
- Opcode::VFMSUBADD132PS |
- Opcode::VFMSUBADD213PD |
- Opcode::VFMSUBADD213PS |
- Opcode::VFMSUBADD231PD |
- Opcode::VFMSUBADD231PS |
- Opcode::VFNMADD132PD |
- Opcode::VFNMADD132PS |
- Opcode::VFNMADD132SD |
- Opcode::VFNMADD132SS |
- Opcode::VFNMADD213PD |
- Opcode::VFNMADD213PS |
- Opcode::VFNMADD213SD |
- Opcode::VFNMADD213SS |
- Opcode::VFNMADD231PD |
- Opcode::VFNMADD231PS |
- Opcode::VFNMADD231SD |
- Opcode::VFNMADD231SS |
- Opcode::VFNMSUB132PD |
- Opcode::VFNMSUB132PS |
- Opcode::VFNMSUB132SD |
- Opcode::VFNMSUB132SS |
- Opcode::VFNMSUB213PD |
- Opcode::VFNMSUB213PS |
- Opcode::VFNMSUB213SD |
- Opcode::VFNMSUB213SS |
- Opcode::VFNMSUB231PD |
- Opcode::VFNMSUB231PS |
- Opcode::VFNMSUB231SD |
- Opcode::VFNMSUB231SS |
- Opcode::VDIVPD |
- Opcode::VDIVPS |
- Opcode::VDIVSD |
- Opcode::VDIVSS |
- Opcode::VHADDPD |
- Opcode::VHSUBPD |
- Opcode::HADDPD |
- Opcode::HSUBPD |
- Opcode::VMULPD |
- Opcode::VMULPS |
- Opcode::VMULSD |
- Opcode::VMULSS |
- Opcode::VPABSB |
- Opcode::VPABSD |
- Opcode::VPABSW |
- Opcode::PABSB |
- Opcode::PABSD |
- Opcode::PABSW |
- Opcode::VPSIGNB |
- Opcode::VPSIGND |
- Opcode::VPSIGNW |
- Opcode::PSIGNB |
- Opcode::PSIGND |
- Opcode::PSIGNW |
- Opcode::VPADDB |
- Opcode::VPADDD |
- Opcode::VPADDQ |
- Opcode::VPADDSB |
- Opcode::VPADDSW |
- Opcode::VPADDUSB |
- Opcode::VPADDUSW |
- Opcode::VPADDW |
- Opcode::VPAVGB |
- Opcode::VPAVGW |
- Opcode::VPMULDQ |
- Opcode::VPMULHRSW |
- Opcode::VPMULHUW |
- Opcode::VPMULHW |
- Opcode::VPMULLQ |
- Opcode::VPMULLD |
- Opcode::VPMULLW |
- Opcode::VPMULUDQ |
- Opcode::PCLMULQDQ |
- Opcode::PMULDQ |
- Opcode::PMULHRSW |
- Opcode::PMULLD |
- Opcode::VPSUBB |
- Opcode::VPSUBD |
- Opcode::VPSUBQ |
- Opcode::VPSUBSB |
- Opcode::VPSUBSW |
- Opcode::VPSUBUSB |
- Opcode::VPSUBUSW |
- Opcode::VPSUBW |
- Opcode::VROUNDPD |
- Opcode::VROUNDPS |
- Opcode::VEXP2PD |
- Opcode::VEXP2PS |
- Opcode::VEXP2SD |
- Opcode::VEXP2SS |
- Opcode::VRCP28PD |
- Opcode::VRCP28PS |
- Opcode::VRCP28SD |
- Opcode::VRCP28SS |
- Opcode::VRCP14PD |
- Opcode::VRCP14PS |
- Opcode::VRCP14SD |
- Opcode::VRCP14SS |
- Opcode::VRNDSCALEPD |
- Opcode::VRNDSCALEPS |
- Opcode::VRNDSCALESD |
- Opcode::VRNDSCALESS |
- Opcode::VRSQRT14PD |
- Opcode::VRSQRT14PS |
- Opcode::VRSQRT14SD |
- Opcode::VRSQRT14SS |
- Opcode::VSCALEDPD |
- Opcode::VSCALEDPS |
- Opcode::VSCALEDSD |
- Opcode::VSCALEDSS |
- Opcode::VRSQRT28PD |
- Opcode::VRSQRT28PS |
- Opcode::VRSQRT28SD |
- Opcode::VRSQRT28SS |
- Opcode::VRSQRTPS |
- Opcode::VSQRTPD |
- Opcode::VSQRTPS |
- Opcode::VSUBPD |
- Opcode::VSUBPS |
- Opcode::VSUBSD |
- Opcode::VSUBSS |
- Opcode::VRCPSS |
- Opcode::VROUNDSD |
- Opcode::VROUNDSS |
- Opcode::ROUNDPD |
- Opcode::ROUNDPS |
- Opcode::ROUNDSD |
- Opcode::ROUNDSS |
- Opcode::VRSQRTSS |
- Opcode::VSQRTSD |
- Opcode::VSQRTSS |
- Opcode::VPSADBW |
- Opcode::VMPSADBW |
- Opcode::VDBPSADBW |
- Opcode::VPHADDD |
- Opcode::VPHADDSW |
- Opcode::VPHADDW |
- Opcode::VPHSUBD |
- Opcode::VPHSUBSW |
- Opcode::VPHSUBW |
- Opcode::VPMADDUBSW |
- Opcode::VPMADDWD |
- Opcode::VDPPD |
- Opcode::VDPPS |
- Opcode::VRCPPS |
- Opcode::VORPD |
- Opcode::VORPS |
- Opcode::VANDPD |
- Opcode::VANDPS |
- Opcode::VANDNPD |
- Opcode::VANDNPS |
- Opcode::VPAND |
- Opcode::VPANDN |
- Opcode::VPOR |
- Opcode::VPXOR |
- Opcode::VXORPD |
- Opcode::VXORPS |
- Opcode::VPSLLD |
- Opcode::VPSLLDQ |
- Opcode::VPSLLQ |
- Opcode::VPSLLVD |
- Opcode::VPSLLVQ |
- Opcode::VPSLLW |
- Opcode::VPROLD |
- Opcode::VPROLQ |
- Opcode::VPROLVD |
- Opcode::VPROLVQ |
- Opcode::VPRORD |
- Opcode::VPRORQ |
- Opcode::VPRORRD |
- Opcode::VPRORRQ |
- Opcode::VPSLLVW |
- Opcode::VPSRAQ |
- Opcode::VPSRAVQ |
- Opcode::VPSRAVW |
- Opcode::VPSRLVW |
- Opcode::VPSRAD |
- Opcode::VPSRAVD |
- Opcode::VPSRAW |
- Opcode::VPSRLD |
- Opcode::VPSRLDQ |
- Opcode::VPSRLQ |
- Opcode::VPSRLVD |
- Opcode::VPSRLVQ |
- Opcode::VPSRLW |
- Opcode::PHADDD |
- Opcode::PHADDSW |
- Opcode::PHADDW |
- Opcode::PHSUBD |
- Opcode::PHSUBSW |
- Opcode::PHSUBW |
- Opcode::PMADDUBSW |
- Opcode::ADDSUBPD |
- Opcode::DPPS |
- Opcode::DPPD |
- Opcode::MPSADBW |
- Opcode::RCPSS |
- Opcode::RSQRTSS |
- Opcode::SQRTSD |
- Opcode::ADDSD |
- Opcode::SUBSD |
- Opcode::MULSD |
- Opcode::DIVSD |
- Opcode::SQRTSS |
- Opcode::ADDSS |
- Opcode::SUBSS |
- Opcode::MULSS |
- Opcode::DIVSS |
- Opcode::HADDPS |
- Opcode::HSUBPS |
- Opcode::ADDSUBPS |
- Opcode::PMULHRW |
- Opcode::PFRCP |
- Opcode::PFRSQRT |
- Opcode::PFSUB |
- Opcode::PFADD |
- Opcode::PFRCPIT1 |
- Opcode::PFRSQIT1 |
- Opcode::PFSUBR |
- Opcode::PFACC |
- Opcode::PFMUL |
- Opcode::PFMULHRW |
- Opcode::PFRCPIT2 |
- Opcode::PFNACC |
- Opcode::PFPNACC |
- Opcode::PSWAPD |
- Opcode::PAVGUSB |
- Opcode::XADD|
- Opcode::DIV |
- Opcode::IDIV |
- Opcode::MUL |
- Opcode::MULX |
- Opcode::NEG |
- Opcode::NOT |
- Opcode::SAR |
- Opcode::SAL |
- Opcode::SHR |
- Opcode::SARX |
- Opcode::SHLX |
- Opcode::SHRX |
- Opcode::SHRD |
- Opcode::SHL |
- Opcode::RCR |
- Opcode::RCL |
- Opcode::ROR |
- Opcode::RORX |
- Opcode::ROL |
- Opcode::INC |
- Opcode::DEC |
- Opcode::SBB |
- Opcode::AND |
- Opcode::XOR |
- Opcode::OR |
- Opcode::LEA |
- Opcode::ADD |
- Opcode::ADC |
- Opcode::ADCX |
- Opcode::ADOX |
- Opcode::SUB |
- Opcode::POPCNT |
- Opcode::LZCNT |
- Opcode::VPLZCNTD |
- Opcode::VPLZCNTQ |
- Opcode::BT |
- Opcode::BTS |
- Opcode::BTR |
- Opcode::BTC |
- Opcode::BSF |
- Opcode::BSR |
- Opcode::BZHI |
- Opcode::PDEP |
- Opcode::PEXT |
- Opcode::TZCNT |
- Opcode::ANDN |
- Opcode::BEXTR |
- Opcode::BLSI |
- Opcode::BLSMSK |
- Opcode::BLSR |
- Opcode::ADDPS |
- Opcode::ADDPD |
- Opcode::ANDNPS |
- Opcode::ANDNPD |
- Opcode::ANDPS |
- Opcode::ANDPD |
- Opcode::COMISD |
- Opcode::COMISS |
- Opcode::DIVPS |
- Opcode::DIVPD |
- Opcode::MULPS |
- Opcode::MULPD |
- Opcode::ORPS |
- Opcode::ORPD |
- Opcode::PADDB |
- Opcode::PADDD |
- Opcode::PADDQ |
- Opcode::PADDSB |
- Opcode::PADDSW |
- Opcode::PADDUSB |
- Opcode::PADDUSW |
- Opcode::PADDW |
- Opcode::PAND |
- Opcode::PANDN |
- Opcode::PAVGB |
- Opcode::PAVGW |
- Opcode::PMADDWD |
- Opcode::PMULHUW |
- Opcode::PMULHW |
- Opcode::PMULLW |
- Opcode::PMULUDQ |
- Opcode::POR |
- Opcode::PSADBW |
- Opcode::PSHUFD |
- Opcode::PSHUFW |
- Opcode::PSHUFB |
- Opcode::PSLLD |
- Opcode::PSLLDQ |
- Opcode::PSLLQ |
- Opcode::PSLLW |
- Opcode::PSRAD |
- Opcode::PSRAW |
- Opcode::PSRLD |
- Opcode::PSRLDQ |
- Opcode::PSRLQ |
- Opcode::PSRLW |
- Opcode::PSUBB |
- Opcode::PSUBD |
- Opcode::PSUBQ |
- Opcode::PSUBSB |
- Opcode::PSUBSW |
- Opcode::PSUBUSB |
- Opcode::PSUBUSW |
- Opcode::PSUBW |
- Opcode::PXOR |
- Opcode::RSQRTPS |
- Opcode::SQRTPS |
- Opcode::SQRTPD |
- Opcode::SUBPS |
- Opcode::SUBPD |
- Opcode::XORPS |
- Opcode::XORPD |
- Opcode::RCPPS |
- Opcode::SHLD |
- Opcode::SLHD |
- Opcode::UCOMISD |
- Opcode::UCOMISS |
- Opcode::F2XM1 |
- Opcode::FABS |
- Opcode::FADD |
- Opcode::FADDP |
- Opcode::FCHS |
- Opcode::FCOS |
- Opcode::FDIV |
- Opcode::FDIVP |
- Opcode::FDIVR |
- Opcode::FDIVRP |
- Opcode::FIADD |
- Opcode::FIDIV |
- Opcode::FIDIVR |
- Opcode::FIMUL |
- Opcode::FISUB |
- Opcode::FISUBR |
- Opcode::FMUL |
- Opcode::FMULP |
- Opcode::FNCLEX |
- Opcode::FNINIT |
- Opcode::FPATAN |
- Opcode::FPREM |
- Opcode::FPREM1 |
- Opcode::FPTAN |
- Opcode::FRNDINT |
- Opcode::FSCALE |
- Opcode::FSIN |
- Opcode::FSINCOS |
- Opcode::FSQRT |
- Opcode::FSUB |
- Opcode::FSUBP |
- Opcode::FSUBR |
- Opcode::FSUBRP |
- Opcode::FXTRACT |
- Opcode::FYL2X |
- Opcode::FYL2XP1 |
- Opcode::KADDB |
- Opcode::KANDB |
- Opcode::KANDNB |
- Opcode::KNOTB |
- Opcode::KORB |
- Opcode::KSHIFTLB |
- Opcode::KSHIFTRB |
- Opcode::KXNORB |
- Opcode::KXORB |
- Opcode::KADDW |
- Opcode::KANDW |
- Opcode::KANDNW |
- Opcode::KNOTW |
- Opcode::KORW |
- Opcode::KSHIFTLW |
- Opcode::KSHIFTRW |
- Opcode::KXNORW |
- Opcode::KXORW |
- Opcode::KADDD |
- Opcode::KANDD |
- Opcode::KANDND |
- Opcode::KNOTD |
- Opcode::KORD |
- Opcode::KSHIFTLD |
- Opcode::KSHIFTRD |
- Opcode::KXNORD |
- Opcode::KXORD |
- Opcode::KADDQ |
- Opcode::KANDQ |
- Opcode::KANDNQ |
- Opcode::KNOTQ |
- Opcode::KORQ |
- Opcode::KSHIFTLQ |
- Opcode::KSHIFTRQ |
- Opcode::KXNORQ |
- Opcode::KXORQ |
- Opcode::IMUL => { write!(out, "{}", colors.arithmetic_op(self)) }
- Opcode::POPF |
- Opcode::PUSHF |
- Opcode::ENTER |
- Opcode::LEAVE |
- Opcode::PUSH |
- Opcode::POP => { write!(out, "{}", colors.stack_op(self)) }
- Opcode::WAIT |
- Opcode::FNOP |
- Opcode::FDISI8087_NOP |
- Opcode::FENI8087_NOP |
- Opcode::FSETPM287_NOP |
- Opcode::PREFETCHNTA |
- Opcode::PREFETCH0 |
- Opcode::PREFETCH1 |
- Opcode::PREFETCH2 |
- Opcode::PREFETCHW |
- Opcode::NOP => { write!(out, "{}", colors.nop_op(self)) }
-
- /* Control flow */
- Opcode::HLT |
- Opcode::INT |
- Opcode::INTO |
- Opcode::IRET |
- Opcode::IRETD |
- Opcode::IRETQ |
- Opcode::RETF |
- Opcode::RETURN => { write!(out, "{}", colors.stop_op(self)) }
- Opcode::LOOPNZ |
- Opcode::LOOPZ |
- Opcode::LOOP |
- Opcode::JRCXZ |
- Opcode::CALL |
- Opcode::CALLF |
- Opcode::JMP |
- Opcode::JMPF |
- Opcode::JO |
- Opcode::JNO |
- Opcode::JB |
- Opcode::JNB |
- Opcode::JZ |
- Opcode::JNZ |
- Opcode::JA |
- Opcode::JNA |
- Opcode::JS |
- Opcode::JNS |
- Opcode::JP |
- Opcode::JNP |
- Opcode::JL |
- Opcode::JGE |
- Opcode::JLE |
- Opcode::JG => { write!(out, "{}", colors.control_flow_op(self)) }
-
- /* Data transfer */
- Opcode::PI2FW |
- Opcode::PI2FD |
- Opcode::PF2ID |
- Opcode::PF2IW |
- Opcode::VCVTDQ2PD |
- Opcode::VCVTDQ2PS |
- Opcode::VCVTPD2DQ |
- Opcode::VCVTPD2PS |
- Opcode::VCVTPH2PS |
- Opcode::VCVTPS2DQ |
- Opcode::VCVTPS2PD |
- Opcode::VCVTPS2PH |
- Opcode::VCVTTPD2DQ |
- Opcode::VCVTTPS2DQ |
- Opcode::VCVTSD2SI |
- Opcode::VCVTSD2SS |
- Opcode::VCVTSI2SD |
- Opcode::VCVTSI2SS |
- Opcode::VCVTSS2SD |
- Opcode::VCVTSS2SI |
- Opcode::VCVTTSD2SI |
- Opcode::VCVTTSS2SI |
- Opcode::VCVTPD2UDQ |
- Opcode::VCVTTPD2UDQ |
- Opcode::VCVTPS2UDQ |
- Opcode::VCVTTPS2UDQ |
- Opcode::VCVTQQ2PD |
- Opcode::VCVTQQ2PS |
- Opcode::VCVTSD2USI |
- Opcode::VCVTTSD2USI |
- Opcode::VCVTSS2USI |
- Opcode::VCVTTSS2USI |
- Opcode::VCVTUDQ2PD |
- Opcode::VCVTUDQ2PS |
- Opcode::VCVTUSI2USD |
- Opcode::VCVTUSI2USS |
- Opcode::VCVTTPD2QQ |
- Opcode::VCVTPD2QQ |
- Opcode::VCVTTPD2UQQ |
- Opcode::VCVTPD2UQQ |
- Opcode::VCVTTPS2QQ |
- Opcode::VCVTPS2QQ |
- Opcode::VCVTTPS2UQQ |
- Opcode::VCVTPS2UQQ |
- Opcode::VCVTUQQ2PD |
- Opcode::VCVTUQQ2PS |
- Opcode::VMOVDDUP |
- Opcode::VPSHUFLW |
- Opcode::VPSHUFHW |
- Opcode::VBLENDMPD |
- Opcode::VBLENDMPS |
- Opcode::VPBLENDMD |
- Opcode::VPBLENDMQ |
- Opcode::VBLENDPD |
- Opcode::VBLENDPS |
- Opcode::VBLENDVPD |
- Opcode::VBLENDVPS |
- Opcode::VPBLENDMB |
- Opcode::VPBLENDMW |
- Opcode::PBLENDVB |
- Opcode::PBLENDW |
- Opcode::BLENDPD |
- Opcode::BLENDPS |
- Opcode::BLENDVPD |
- Opcode::BLENDVPS |
- Opcode::BLENDW |
- Opcode::VBROADCASTF128 |
- Opcode::VBROADCASTI128 |
- Opcode::VBROADCASTSD |
- Opcode::VBROADCASTSS |
- Opcode::VPBROADCASTM |
- Opcode::VEXTRACTF128 |
- Opcode::VEXTRACTI128 |
- Opcode::VEXTRACTPS |
- Opcode::EXTRACTPS |
- Opcode::VGATHERDPD |
- Opcode::VGATHERDPS |
- Opcode::VGATHERQPD |
- Opcode::VGATHERQPS |
- Opcode::VGATHERPF0DPD |
- Opcode::VGATHERPF0DPS |
- Opcode::VGATHERPF0QPD |
- Opcode::VGATHERPF0QPS |
- Opcode::VGATHERPF1DPD |
- Opcode::VGATHERPF1DPS |
- Opcode::VGATHERPF1QPD |
- Opcode::VGATHERPF1QPS |
- Opcode::VSCATTERDD |
- Opcode::VSCATTERDQ |
- Opcode::VSCATTERQD |
- Opcode::VSCATTERQQ |
- Opcode::VSCATTERDPS |
- Opcode::VSCATTERDPD |
- Opcode::VSCATTERQPS |
- Opcode::VSCATTERQPD |
- Opcode::VPSCATTERDD |
- Opcode::VPSCATTERDQ |
- Opcode::VPSCATTERQD |
- Opcode::VPSCATTERQQ |
- Opcode::VSCATTERPF0DPD |
- Opcode::VSCATTERPF0DPS |
- Opcode::VSCATTERPF0QPD |
- Opcode::VSCATTERPF0QPS |
- Opcode::VSCATTERPF1DPD |
- Opcode::VSCATTERPF1DPS |
- Opcode::VSCATTERPF1QPD |
- Opcode::VSCATTERPF1QPS |
- Opcode::VINSERTF128 |
- Opcode::VINSERTI128 |
- Opcode::VINSERTPS |
- Opcode::INSERTPS |
- Opcode::VEXTRACTF32X4 |
- Opcode::VEXTRACTF64X2 |
- Opcode::VEXTRACTF64X4 |
- Opcode::VEXTRACTI32X4 |
- Opcode::VEXTRACTI64X2 |
- Opcode::VEXTRACTI64X4 |
- Opcode::VINSERTF32X4 |
- Opcode::VINSERTF64X2 |
- Opcode::VINSERTF64X4 |
- Opcode::VINSERTI64X2 |
- Opcode::VINSERTI64X4 |
- Opcode::VSHUFF32X4 |
- Opcode::VSHUFF64X2 |
- Opcode::VSHUFI32X4 |
- Opcode::VSHUFI64X2 |
- Opcode::VMASKMOVDQU |
- Opcode::VMASKMOVPD |
- Opcode::VMASKMOVPS |
- Opcode::VMOVAPD |
- Opcode::VMOVAPS |
- Opcode::VMOVD |
- Opcode::VMOVDQA |
- Opcode::VMOVDQU |
- Opcode::VMOVHLPS |
- Opcode::VMOVHPD |
- Opcode::VMOVHPS |
- Opcode::VMOVLHPS |
- Opcode::VMOVLPD |
- Opcode::VMOVLPS |
- Opcode::VMOVMSKPD |
- Opcode::VMOVMSKPS |
- Opcode::VMOVNTDQ |
- Opcode::VMOVNTDQA |
- Opcode::VMOVNTPD |
- Opcode::VMOVNTPS |
- Opcode::MOVDIR64B |
- Opcode::MOVDIRI |
- Opcode::MOVNTDQA |
- Opcode::VMOVQ |
- Opcode::VMOVSHDUP |
- Opcode::VMOVSLDUP |
- Opcode::VMOVUPD |
- Opcode::VMOVUPS |
- Opcode::VMOVSD |
- Opcode::VMOVSS |
- Opcode::VMOVDQA32 |
- Opcode::VMOVDQA64 |
- Opcode::VMOVDQU32 |
- Opcode::VMOVDQU64 |
- Opcode::VPMOVM2B |
- Opcode::VPMOVM2W |
- Opcode::VPMOVB2M |
- Opcode::VPMOVW2M |
- Opcode::VPMOVSWB |
- Opcode::VPMOVUSWB |
- Opcode::VPMOVSQB |
- Opcode::VPMOVUSQB |
- Opcode::VPMOVSQW |
- Opcode::VPMOVUSQW |
- Opcode::VPMOVSQD |
- Opcode::VPMOVUSQD |
- Opcode::VPMOVSDB |
- Opcode::VPMOVUSDB |
- Opcode::VPMOVSDW |
- Opcode::VPMOVUSDW |
- Opcode::VPMOVM2D |
- Opcode::VPMOVM2Q |
- Opcode::VPMOVB2D |
- Opcode::VPMOVQ2M |
- Opcode::VMOVDQU8 |
- Opcode::VMOVDQU16 |
-
- Opcode::VPBLENDD |
- Opcode::VPBLENDVB |
- Opcode::VPBLENDW |
- Opcode::VPBROADCASTB |
- Opcode::VPBROADCASTD |
- Opcode::VPBROADCASTQ |
- Opcode::VPBROADCASTW |
- Opcode::VPGATHERDD |
- Opcode::VPGATHERDQ |
- Opcode::VPGATHERQD |
- Opcode::VPGATHERQQ |
- Opcode::VPCLMULQDQ |
- Opcode::VPMOVMSKB |
- Opcode::VPMOVSXBD |
- Opcode::VPMOVSXBQ |
- Opcode::VPMOVSXBW |
- Opcode::VPMOVSXDQ |
- Opcode::VPMOVSXWD |
- Opcode::VPMOVSXWQ |
- Opcode::VPMOVZXBD |
- Opcode::VPMOVZXBQ |
- Opcode::VPMOVZXBW |
- Opcode::VPMOVZXDQ |
- Opcode::VPMOVZXWD |
- Opcode::VPMOVZXWQ |
- Opcode::PMOVSXBD |
- Opcode::PMOVSXBQ |
- Opcode::PMOVSXBW |
- Opcode::PMOVSXDQ |
- Opcode::PMOVSXWD |
- Opcode::PMOVSXWQ |
- Opcode::PMOVZXBD |
- Opcode::PMOVZXBQ |
- Opcode::PMOVZXBW |
- Opcode::PMOVZXDQ |
- Opcode::PMOVZXWD |
- Opcode::PMOVZXWQ |
- Opcode::KUNPCKBW |
- Opcode::KUNPCKWD |
- Opcode::KUNPCKDQ |
- Opcode::VUNPCKHPD |
- Opcode::VUNPCKHPS |
- Opcode::VUNPCKLPD |
- Opcode::VUNPCKLPS |
- Opcode::VPUNPCKHBW |
- Opcode::VPUNPCKHDQ |
- Opcode::VPUNPCKHQDQ |
- Opcode::VPUNPCKHWD |
- Opcode::VPUNPCKLBW |
- Opcode::VPUNPCKLDQ |
- Opcode::VPUNPCKLQDQ |
- Opcode::VPUNPCKLWD |
- Opcode::VSHUFPD |
- Opcode::VSHUFPS |
- Opcode::VPACKSSDW |
- Opcode::VPACKUSDW |
- Opcode::PACKUSDW |
- Opcode::VPACKSSWB |
- Opcode::VPACKUSWB |
- Opcode::VALIGND |
- Opcode::VALIGNQ |
- Opcode::VPALIGNR |
- Opcode::PALIGNR |
- Opcode::VPERM2F128 |
- Opcode::VPERM2I128 |
- Opcode::VPERMD |
- Opcode::VPERMILPD |
- Opcode::VPERMILPS |
- Opcode::VPERMPD |
- Opcode::VPERMPS |
- Opcode::VPERMQ |
- Opcode::VPERMI2D |
- Opcode::VPERMI2Q |
- Opcode::VPERMI2PD |
- Opcode::VPERMI2PS |
- Opcode::VPERMT2D |
- Opcode::VPERMT2Q |
- Opcode::VPERMT2PD |
- Opcode::VPERMT2PS |
- Opcode::VPERMI2B |
- Opcode::VPERMI2W |
- Opcode::VPERMW |
- Opcode::VPEXTRB |
- Opcode::VPEXTRD |
- Opcode::VPEXTRQ |
- Opcode::VPEXTRW |
- Opcode::PEXTRB |
- Opcode::PEXTRD |
- Opcode::PEXTRQ |
- Opcode::EXTRQ |
- Opcode::PINSRB |
- Opcode::PINSRD |
- Opcode::PINSRQ |
- Opcode::INSERTQ |
- Opcode::VPINSRB |
- Opcode::VPINSRD |
- Opcode::VPINSRQ |
- Opcode::VPINSRW |
- Opcode::VPMASKMOVD |
- Opcode::VPMASKMOVQ |
- Opcode::VCOMPRESSD |
- Opcode::VCOMPRESSQ |
- Opcode::VCOMPRESSPD |
- Opcode::VCOMPRESSPS |
- Opcode::VPCOMPRESSQ |
- Opcode::VPCOMPRESSD |
- Opcode::VEXPANDPD |
- Opcode::VEXPANDPS |
- Opcode::VPSHUFB |
- Opcode::VPSHUFD |
- Opcode::VPHMINPOSUW |
- Opcode::PHMINPOSUW |
- Opcode::VZEROUPPER |
- Opcode::VZEROALL |
- Opcode::VFIXUPIMMPD |
- Opcode::VFIXUPIMMPS |
- Opcode::VFIXUPIMMSD |
- Opcode::VFIXUPIMMSS |
- Opcode::VREDUCEPD |
- Opcode::VREDUCEPS |
- Opcode::VREDUCESD |
- Opcode::VREDUCESS |
- Opcode::VGETEXPPD |
- Opcode::VGETEXPPS |
- Opcode::VGETEXPSD |
- Opcode::VGETEXPSS |
- Opcode::VGETMANTPD |
- Opcode::VGETMANTPS |
- Opcode::VGETMANTSD |
- Opcode::VGETMANTSS |
- Opcode::VLDDQU |
- Opcode::BSWAP |
- Opcode::CVTDQ2PD |
- Opcode::CVTDQ2PS |
- Opcode::CVTPS2DQ |
- Opcode::CVTPD2DQ |
- Opcode::CVTPI2PS |
- Opcode::CVTPI2PD |
- Opcode::CVTPS2PD |
- Opcode::CVTPD2PS |
- Opcode::CVTPS2PI |
- Opcode::CVTPD2PI |
- Opcode::CVTSD2SI |
- Opcode::CVTSD2SS |
- Opcode::CVTSI2SD |
- Opcode::CVTSI2SS |
- Opcode::CVTSS2SD |
- Opcode::CVTSS2SI |
- Opcode::CVTTPD2DQ |
- Opcode::CVTTPS2DQ |
- Opcode::CVTTPS2PI |
- Opcode::CVTTPD2PI |
- Opcode::CVTTSD2SI |
- Opcode::CVTTSS2SI |
- Opcode::MASKMOVQ |
- Opcode::MASKMOVDQU |
- Opcode::MOVAPS |
- Opcode::MOVAPD |
- Opcode::MOVD |
- Opcode::MOVHPS |
- Opcode::MOVHPD |
- Opcode::MOVHLPS |
- Opcode::MOVLPS |
- Opcode::MOVLPD |
- Opcode::MOVLHPS |
- Opcode::MOVMSKPS |
- Opcode::MOVMSKPD |
- Opcode::MOVNTI |
- Opcode::MOVNTPS |
- Opcode::MOVNTPD |
- Opcode::MOVNTSS |
- Opcode::MOVNTSD |
- Opcode::MOVNTQ |
- Opcode::MOVNTDQ |
- Opcode::MOVSD |
- Opcode::MOVSS |
- Opcode::MOVUPD |
- Opcode::PSHUFHW |
- Opcode::PSHUFLW |
- Opcode::PUNPCKHBW |
- Opcode::PUNPCKHDQ |
- Opcode::PUNPCKHWD |
- Opcode::PUNPCKLBW |
- Opcode::PUNPCKLDQ |
- Opcode::PUNPCKLWD |
- Opcode::PUNPCKLQDQ |
- Opcode::PUNPCKHQDQ |
- Opcode::PACKSSDW |
- Opcode::PACKSSWB |
- Opcode::PACKUSWB |
- Opcode::UNPCKHPS |
- Opcode::UNPCKHPD |
- Opcode::UNPCKLPS |
- Opcode::UNPCKLPD |
- Opcode::SHUFPD |
- Opcode::SHUFPS |
- Opcode::PMOVMSKB |
- Opcode::KMOVB |
- Opcode::KMOVW |
- Opcode::KMOVD |
- Opcode::KMOVQ |
- Opcode::BNDMOV |
- Opcode::LDDQU |
- Opcode::CMC |
- Opcode::CLC |
- Opcode::CLI |
- Opcode::CLD |
- Opcode::STC |
- Opcode::STI |
- Opcode::STD |
- Opcode::CBW |
- Opcode::CWDE |
- Opcode::CDQE |
- Opcode::CWD |
- Opcode::CDQ |
- Opcode::CQO |
- Opcode::MOVDDUP |
- Opcode::MOVSLDUP |
- Opcode::MOVDQ2Q |
- Opcode::MOVDQU |
- Opcode::MOVDQA |
- Opcode::MOVQ |
- Opcode::MOVQ2DQ |
- Opcode::MOVSHDUP |
- Opcode::MOVUPS |
- Opcode::PEXTRW |
- Opcode::PINSRW |
- Opcode::MOV |
- Opcode::MOVBE |
- Opcode::LODS |
- Opcode::STOS |
- Opcode::LAHF |
- Opcode::SAHF |
- Opcode::MOVS |
- Opcode::INS |
- Opcode::IN |
- Opcode::OUTS |
- Opcode::OUT |
- Opcode::MOVZX |
- Opcode::MOVSX |
- Opcode::MOVSXD |
- Opcode::FILD |
- Opcode::FBLD |
- Opcode::FBSTP |
- Opcode::FIST |
- Opcode::FISTP |
- Opcode::FISTTP |
- Opcode::FLD |
- Opcode::FLD1 |
- Opcode::FLDCW |
- Opcode::FLDENV |
- Opcode::FLDL2E |
- Opcode::FLDL2T |
- Opcode::FLDLG2 |
- Opcode::FLDLN2 |
- Opcode::FLDPI |
- Opcode::FLDZ |
- Opcode::FST |
- Opcode::FSTP |
- Opcode::FSTPNCE |
- Opcode::FNSAVE |
- Opcode::FNSTCW |
- Opcode::FNSTENV |
- Opcode::FNSTOR |
- Opcode::FNSTSW |
- Opcode::FRSTOR |
- Opcode::FXCH |
- Opcode::XCHG |
- Opcode::XLAT |
- Opcode::CMOVA |
- Opcode::CMOVB |
- Opcode::CMOVG |
- Opcode::CMOVGE |
- Opcode::CMOVL |
- Opcode::CMOVLE |
- Opcode::CMOVNA |
- Opcode::CMOVNB |
- Opcode::CMOVNO |
- Opcode::CMOVNP |
- Opcode::CMOVNS |
- Opcode::CMOVNZ |
- Opcode::CMOVO |
- Opcode::CMOVP |
- Opcode::CMOVS |
- Opcode::CMOVZ |
- Opcode::FCMOVB |
- Opcode::FCMOVBE |
- Opcode::FCMOVE |
- Opcode::FCMOVNB |
- Opcode::FCMOVNBE |
- Opcode::FCMOVNE |
- Opcode::FCMOVNU |
- Opcode::FCMOVU |
- Opcode::SALC |
- Opcode::SETO |
- Opcode::SETNO |
- Opcode::SETB |
- Opcode::SETAE |
- Opcode::SETZ |
- Opcode::SETNZ |
- Opcode::SETBE |
- Opcode::SETA |
- Opcode::SETS |
- Opcode::SETNS |
- Opcode::SETP |
- Opcode::SETNP |
- Opcode::SETL |
- Opcode::SETGE |
- Opcode::SETLE |
- Opcode::SETG => { write!(out, "{}", colors.data_op(self)) }
-
- Opcode::VCOMISD |
- Opcode::VCOMISS |
- Opcode::VUCOMISD |
- Opcode::VUCOMISS |
- Opcode::KORTESTB |
- Opcode::KTESTB |
- Opcode::KORTESTW |
- Opcode::KTESTW |
- Opcode::KORTESTD |
- Opcode::KTESTD |
- Opcode::KORTESTQ |
- Opcode::KTESTQ |
- Opcode::VPTESTNMD |
- Opcode::VPTESTNMQ |
- Opcode::VPTERNLOGD |
- Opcode::VPTERNLOGQ |
- Opcode::VPTESTMD |
- Opcode::VPTESTMQ |
- Opcode::VPTESTNMB |
- Opcode::VPTESTNMW |
- Opcode::VPTESTMB |
- Opcode::VPTESTMW |
- Opcode::VPCMPD |
- Opcode::VPCMPUD |
- Opcode::VPCMPQ |
- Opcode::VPCMPUQ |
- Opcode::VPCMPB |
- Opcode::VPCMPUB |
- Opcode::VPCMPW |
- Opcode::VPCMPUW |
- Opcode::VCMPPD |
- Opcode::VCMPPS |
- Opcode::VCMPSD |
- Opcode::VCMPSS |
- Opcode::VMAXPD |
- Opcode::VMAXPS |
- Opcode::VMAXSD |
- Opcode::VMAXSS |
- Opcode::VPMAXSQ |
- Opcode::VPMAXUQ |
- Opcode::VPMINSQ |
- Opcode::VPMINUQ |
- Opcode::VMINPD |
- Opcode::VMINPS |
- Opcode::VMINSD |
- Opcode::VMINSS |
- Opcode::VPCMPEQB |
- Opcode::VPCMPEQD |
- Opcode::VPCMPEQQ |
- Opcode::VPCMPEQW |
- Opcode::VPCMPGTB |
- Opcode::VPCMPGTD |
- Opcode::VPCMPGTQ |
- Opcode::VPCMPGTW |
- Opcode::VPCMPESTRI |
- Opcode::VPCMPESTRM |
- Opcode::VPCMPISTRI |
- Opcode::VPCMPISTRM |
- Opcode::VPMAXSB |
- Opcode::VPMAXSD |
- Opcode::VPMAXSW |
- Opcode::VPMAXUB |
- Opcode::VPMAXUW |
- Opcode::VPMAXUD |
- Opcode::VPMINSB |
- Opcode::VPMINSW |
- Opcode::VPMINSD |
- Opcode::VPMINUB |
- Opcode::VPMINUW |
- Opcode::VPMINUD |
- Opcode::VFPCLASSPD |
- Opcode::VFPCLASSPS |
- Opcode::VFPCLASSSD |
- Opcode::VFPCLASSSS |
- Opcode::VRANGEPD |
- Opcode::VRANGEPS |
- Opcode::VRANGESD |
- Opcode::VRANGESS |
- Opcode::VPCONFLICTD |
- Opcode::VPCONFLICTQ |
- Opcode::VPTEST |
- Opcode::VTESTPD |
- Opcode::VTESTPS |
- Opcode::PCMPEQB |
- Opcode::PCMPEQD |
- Opcode::PCMPEQQ |
- Opcode::PCMPEQW |
- Opcode::PCMPESTRI |
- Opcode::PCMPESTRM |
- Opcode::PCMPGTB |
- Opcode::PCMPGTD |
- Opcode::PCMPGTQ |
- Opcode::PCMPGTW |
- Opcode::PCMPISTRI |
- Opcode::PCMPISTRM |
- Opcode::PTEST |
- Opcode::MAXPD |
- Opcode::MAXPS |
- Opcode::MAXSD |
- Opcode::MAXSS |
- Opcode::MINPD |
- Opcode::MINPS |
- Opcode::MINSD |
- Opcode::MINSS |
- Opcode::PMAXSB |
- Opcode::PMAXSD |
- Opcode::PMAXSW |
- Opcode::PMAXUB |
- Opcode::PMAXUD |
- Opcode::PMAXUW |
- Opcode::PMINSB |
- Opcode::PMINSD |
- Opcode::PMINSW |
- Opcode::PMINUB |
- Opcode::PMINUD |
- Opcode::PMINUW |
- Opcode::PFCMPGE |
- Opcode::PFMIN |
- Opcode::PFCMPGT |
- Opcode::PFMAX |
- Opcode::PFCMPEQ |
- Opcode::CMPS |
- Opcode::SCAS |
- Opcode::TEST |
- Opcode::FTST |
- Opcode::FXAM |
- Opcode::FUCOM |
- Opcode::FUCOMI |
- Opcode::FUCOMIP |
- Opcode::FUCOMP |
- Opcode::FUCOMPP |
- Opcode::FCOM |
- Opcode::FCOMI |
- Opcode::FCOMIP |
- Opcode::FCOMP |
- Opcode::FCOMPP |
- Opcode::FICOM |
- Opcode::FICOMP |
- Opcode::CMPSD |
- Opcode::CMPSS |
- Opcode::CMP |
- Opcode::CMPPS |
- Opcode::CMPPD |
- Opcode::CMPXCHG8B |
- Opcode::CMPXCHG16B |
- Opcode::CMPXCHG => { write!(out, "{}", colors.comparison_op(self)) }
-
- Opcode::WRMSR |
- Opcode::RDMSR |
- Opcode::RDTSC |
- Opcode::RDPMC |
- Opcode::RDPID |
- Opcode::RDFSBASE |
- Opcode::RDGSBASE |
- Opcode::WRFSBASE |
- Opcode::WRGSBASE |
- Opcode::FXSAVE |
- Opcode::FXRSTOR |
- Opcode::LDMXCSR |
- Opcode::STMXCSR |
- Opcode::VLDMXCSR |
- Opcode::VSTMXCSR |
- Opcode::XSAVE |
- Opcode::XSAVEC |
- Opcode::XSAVES |
- Opcode::XSAVEC64 |
- Opcode::XSAVES64 |
- Opcode::XRSTOR |
- Opcode::XRSTORS |
- Opcode::XRSTORS64 |
- Opcode::XSAVEOPT |
- Opcode::LFENCE |
- Opcode::MFENCE |
- Opcode::SFENCE |
- Opcode::CLFLUSH |
- Opcode::CLFLUSHOPT |
- Opcode::CLWB |
- Opcode::SGDT |
- Opcode::SIDT |
- Opcode::LGDT |
- Opcode::LIDT |
- Opcode::SMSW |
- Opcode::LMSW |
- Opcode::SWAPGS |
- Opcode::RDTSCP |
- Opcode::INVEPT |
- Opcode::INVVPID |
- Opcode::INVPCID |
- Opcode::INVLPG |
- Opcode::INVLPGA |
- Opcode::INVLPGB |
- Opcode::TLBSYNC |
- Opcode::PSMASH |
- Opcode::PVALIDATE |
- Opcode::RMPADJUST |
- Opcode::RMPUPDATE |
- Opcode::CPUID |
- Opcode::WBINVD |
- Opcode::INVD |
- Opcode::SYSRET |
- Opcode::CLTS |
- Opcode::SYSCALL |
- Opcode::TDCALL |
- Opcode::SEAMRET |
- Opcode::SEAMOPS |
- Opcode::SEAMCALL |
- Opcode::TPAUSE |
- Opcode::UMONITOR |
- Opcode::UMWAIT |
- Opcode::LSL |
- Opcode::SLDT |
- Opcode::STR |
- Opcode::LLDT |
- Opcode::LTR |
- Opcode::VERR |
- Opcode::VERW |
- Opcode::JMPE |
- Opcode::EMMS |
- Opcode::FEMMS |
- Opcode::GETSEC |
- Opcode::LDS |
- Opcode::LES |
- Opcode::LFS |
- Opcode::LGS |
- Opcode::LSS |
- Opcode::RSM |
- Opcode::SYSENTER |
- Opcode::SYSEXIT |
- Opcode::VMREAD |
- Opcode::VMWRITE |
- Opcode::VMCLEAR |
- Opcode::VMPTRLD |
- Opcode::VMPTRST |
- Opcode::VMXON |
- Opcode::VMCALL |
- Opcode::VMLAUNCH |
- Opcode::VMRESUME |
- Opcode::VMLOAD |
- Opcode::VMMCALL |
- Opcode::VMSAVE |
- Opcode::VMRUN |
- Opcode::VMXOFF |
- Opcode::PCONFIG |
- Opcode::MONITOR |
- Opcode::MWAIT |
- Opcode::MONITORX |
- Opcode::MWAITX |
- Opcode::SKINIT |
- Opcode::CLGI |
- Opcode::STGI |
- Opcode::CLAC |
- Opcode::STAC |
- Opcode::ENCLS |
- Opcode::ENCLV |
- Opcode::XGETBV |
- Opcode::XSETBV |
- Opcode::VMFUNC |
- Opcode::XEND |
- Opcode::XTEST |
- Opcode::XABORT |
- Opcode::XBEGIN |
- Opcode::ENCLU |
- Opcode::RDPKRU |
- Opcode::WRPKRU |
- Opcode::RDPRU |
- Opcode::CLZERO |
- Opcode::ENQCMD |
- Opcode::ENQCMDS |
- Opcode::PTWRITE |
- Opcode::UIRET |
- Opcode::TESTUI |
- Opcode::CLUI |
- Opcode::STUI |
- Opcode::SENDUIPI |
- Opcode::XSUSLDTRK |
- Opcode::XRESLDTRK |
- Opcode::BNDMK |
- Opcode::BNDCL |
- Opcode::BNDCU |
- Opcode::BNDCN |
- Opcode::BNDLDX |
- Opcode::BNDSTX |
- Opcode::LAR => { write!(out, "{}", colors.platform_op(self)) }
-
- Opcode::CRC32 |
- Opcode::RDSEED |
- Opcode::RDRAND |
- Opcode::SHA1RNDS4 |
- Opcode::SHA1NEXTE |
- Opcode::SHA1MSG1 |
- Opcode::SHA1MSG2 |
- Opcode::SHA256RNDS2 |
- Opcode::SHA256MSG1 |
- Opcode::SHA256MSG2 |
- Opcode::FFREE |
- Opcode::FFREEP |
- Opcode::FDECSTP |
- Opcode::FINCSTP |
- Opcode::GF2P8MULB |
- Opcode::GF2P8AFFINEQB |
- Opcode::GF2P8AFFINEINVQB |
- Opcode::AESDEC128KL |
- Opcode::AESDEC256KL |
- Opcode::AESDECWIDE128KL |
- Opcode::AESDECWIDE256KL |
- Opcode::AESENC128KL |
- Opcode::AESENC256KL |
- Opcode::AESENCWIDE128KL |
- Opcode::AESENCWIDE256KL |
- Opcode::ENCODEKEY128 |
- Opcode::ENCODEKEY256 |
- Opcode::LOADIWKEY |
- Opcode::HRESET |
- Opcode::WRUSS |
- Opcode::WRSS |
- Opcode::INCSSP |
- Opcode::SAVEPREVSSP |
- Opcode::SETSSBSY |
- Opcode::CLRSSBSY |
- Opcode::RSTORSSP |
- Opcode::ENDBR64 |
- Opcode::ENDBR32 |
- Opcode::AESDEC |
- Opcode::AESDECLAST |
- Opcode::AESENC |
- Opcode::AESENCLAST |
- Opcode::AESIMC |
- Opcode::AESKEYGENASSIST |
- Opcode::VAESDEC |
- Opcode::VAESDECLAST |
- Opcode::VAESENC |
- Opcode::VAESENCLAST |
- Opcode::VAESIMC |
- Opcode::VAESKEYGENASSIST => { write!(out, "{}", colors.misc_op(self)) }
-
- Opcode::UD0 |
- Opcode::UD1 |
- Opcode::UD2 |
- Opcode::Invalid => { write!(out, "{}", colors.invalid_op(self)) }
- }
- }
-}
-
impl fmt::Display for Instruction {
fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
self.display_with(DisplayStyle::Intel).colorize(&NoColors, fmt)
diff --git a/src/protected_mode/display.rs b/src/protected_mode/display.rs
index 9ef531e..41e58d5 100644
--- a/src/protected_mode/display.rs
+++ b/src/protected_mode/display.rs
@@ -345,1462 +345,6 @@ impl fmt::Display for Opcode {
}
}
-impl Opcode {
- fn name(&self) -> &'static str {
- unsafe {
- crate::generated::opcode::MNEMONICS.get_kinda_unchecked(*self as usize)
- }
- }
-}
-
-impl <T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
- fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
- match self {
- Opcode::VGF2P8AFFINEQB |
- Opcode::VGF2P8AFFINEINVQB |
- Opcode::VPSHRDQ |
- Opcode::VPSHRDD |
- Opcode::VPSHRDW |
- Opcode::VPSHLDQ |
- Opcode::VPSHLDD |
- Opcode::VPSHLDW |
- Opcode::VBROADCASTF32X8 |
- Opcode::VBROADCASTF64X4 |
- Opcode::VBROADCASTF32X4 |
- Opcode::VBROADCASTF64X2 |
- Opcode::VBROADCASTF32X2 |
- Opcode::VBROADCASTI32X8 |
- Opcode::VBROADCASTI64X4 |
- Opcode::VBROADCASTI32X4 |
- Opcode::VBROADCASTI64X2 |
- Opcode::VBROADCASTI32X2 |
- Opcode::VEXTRACTI32X8 |
- Opcode::VEXTRACTF32X8 |
- Opcode::VINSERTI32X8 |
- Opcode::VINSERTF32X8 |
- Opcode::VINSERTI32X4 |
- Opcode::V4FNMADDSS |
- Opcode::V4FNMADDPS |
- Opcode::VCVTNEPS2BF16 |
- Opcode::V4FMADDSS |
- Opcode::V4FMADDPS |
- Opcode::VCVTNE2PS2BF16 |
- Opcode::VP2INTERSECTD |
- Opcode::VP2INTERSECTQ |
- Opcode::VP4DPWSSDS |
- Opcode::VP4DPWSSD |
- Opcode::VPDPWSSDS |
- Opcode::VPDPWSSD |
- Opcode::VPDPBUSDS |
- Opcode::VDPBF16PS |
- Opcode::VPBROADCASTMW2D |
- Opcode::VPBROADCASTMB2Q |
- Opcode::VPMOVD2M |
- Opcode::VPMOVQD |
- Opcode::VPMOVWB |
- Opcode::VPMOVDB |
- Opcode::VPMOVDW |
- Opcode::VPMOVQB |
- Opcode::VPMOVQW |
- Opcode::VGF2P8MULB |
- Opcode::VPMADD52HUQ |
- Opcode::VPMADD52LUQ |
- Opcode::VPSHUFBITQMB |
- Opcode::VPERMB |
- Opcode::VPEXPANDD |
- Opcode::VPEXPANDQ |
- Opcode::VPABSQ |
- Opcode::VPRORVD |
- Opcode::VPRORVQ |
- Opcode::VPMULTISHIFTQB |
- Opcode::VPERMT2B |
- Opcode::VPERMT2W |
- Opcode::VPSHRDVQ |
- Opcode::VPSHRDVD |
- Opcode::VPSHRDVW |
- Opcode::VPSHLDVQ |
- Opcode::VPSHLDVD |
- Opcode::VPSHLDVW |
- Opcode::VPCOMPRESSB |
- Opcode::VPCOMPRESSW |
- Opcode::VPEXPANDB |
- Opcode::VPEXPANDW |
- Opcode::VPOPCNTD |
- Opcode::VPOPCNTQ |
- Opcode::VPOPCNTB |
- Opcode::VPOPCNTW |
- Opcode::VSCALEFSS |
- Opcode::VSCALEFSD |
- Opcode::VSCALEFPS |
- Opcode::VSCALEFPD |
- Opcode::VPDPBUSD |
- Opcode::VCVTUSI2SD |
- Opcode::VCVTUSI2SS |
- Opcode::VPXORD |
- Opcode::VPXORQ |
- Opcode::VPORD |
- Opcode::VPORQ |
- Opcode::VPANDND |
- Opcode::VPANDNQ |
- Opcode::VPANDD |
- Opcode::VPANDQ |
-
- Opcode::VHADDPS |
- Opcode::VHSUBPS |
- Opcode::VADDSUBPS |
- Opcode::VADDPD |
- Opcode::VADDPS |
- Opcode::VADDSD |
- Opcode::VADDSS |
- Opcode::VADDSUBPD |
- Opcode::VFMADD132PD |
- Opcode::VFMADD132PS |
- Opcode::VFMADD132SD |
- Opcode::VFMADD132SS |
- Opcode::VFMADD213PD |
- Opcode::VFMADD213PS |
- Opcode::VFMADD213SD |
- Opcode::VFMADD213SS |
- Opcode::VFMADD231PD |
- Opcode::VFMADD231PS |
- Opcode::VFMADD231SD |
- Opcode::VFMADD231SS |
- Opcode::VFMADDSUB132PD |
- Opcode::VFMADDSUB132PS |
- Opcode::VFMADDSUB213PD |
- Opcode::VFMADDSUB213PS |
- Opcode::VFMADDSUB231PD |
- Opcode::VFMADDSUB231PS |
- Opcode::VFMSUB132PD |
- Opcode::VFMSUB132PS |
- Opcode::VFMSUB132SD |
- Opcode::VFMSUB132SS |
- Opcode::VFMSUB213PD |
- Opcode::VFMSUB213PS |
- Opcode::VFMSUB213SD |
- Opcode::VFMSUB213SS |
- Opcode::VFMSUB231PD |
- Opcode::VFMSUB231PS |
- Opcode::VFMSUB231SD |
- Opcode::VFMSUB231SS |
- Opcode::VFMSUBADD132PD |
- Opcode::VFMSUBADD132PS |
- Opcode::VFMSUBADD213PD |
- Opcode::VFMSUBADD213PS |
- Opcode::VFMSUBADD231PD |
- Opcode::VFMSUBADD231PS |
- Opcode::VFNMADD132PD |
- Opcode::VFNMADD132PS |
- Opcode::VFNMADD132SD |
- Opcode::VFNMADD132SS |
- Opcode::VFNMADD213PD |
- Opcode::VFNMADD213PS |
- Opcode::VFNMADD213SD |
- Opcode::VFNMADD213SS |
- Opcode::VFNMADD231PD |
- Opcode::VFNMADD231PS |
- Opcode::VFNMADD231SD |
- Opcode::VFNMADD231SS |
- Opcode::VFNMSUB132PD |
- Opcode::VFNMSUB132PS |
- Opcode::VFNMSUB132SD |
- Opcode::VFNMSUB132SS |
- Opcode::VFNMSUB213PD |
- Opcode::VFNMSUB213PS |
- Opcode::VFNMSUB213SD |
- Opcode::VFNMSUB213SS |
- Opcode::VFNMSUB231PD |
- Opcode::VFNMSUB231PS |
- Opcode::VFNMSUB231SD |
- Opcode::VFNMSUB231SS |
- Opcode::VDIVPD |
- Opcode::VDIVPS |
- Opcode::VDIVSD |
- Opcode::VDIVSS |
- Opcode::VHADDPD |
- Opcode::VHSUBPD |
- Opcode::HADDPD |
- Opcode::HSUBPD |
- Opcode::VMULPD |
- Opcode::VMULPS |
- Opcode::VMULSD |
- Opcode::VMULSS |
- Opcode::VPABSB |
- Opcode::VPABSD |
- Opcode::VPABSW |
- Opcode::PABSB |
- Opcode::PABSD |
- Opcode::PABSW |
- Opcode::VPSIGNB |
- Opcode::VPSIGND |
- Opcode::VPSIGNW |
- Opcode::PSIGNB |
- Opcode::PSIGND |
- Opcode::PSIGNW |
- Opcode::VPADDB |
- Opcode::VPADDD |
- Opcode::VPADDQ |
- Opcode::VPADDSB |
- Opcode::VPADDSW |
- Opcode::VPADDUSB |
- Opcode::VPADDUSW |
- Opcode::VPADDW |
- Opcode::VPAVGB |
- Opcode::VPAVGW |
- Opcode::VPMULDQ |
- Opcode::VPMULHRSW |
- Opcode::VPMULHUW |
- Opcode::VPMULHW |
- Opcode::VPMULLQ |
- Opcode::VPMULLD |
- Opcode::VPMULLW |
- Opcode::VPMULUDQ |
- Opcode::PCLMULQDQ |
- Opcode::PMULDQ |
- Opcode::PMULHRSW |
- Opcode::PMULLD |
- Opcode::VPSUBB |
- Opcode::VPSUBD |
- Opcode::VPSUBQ |
- Opcode::VPSUBSB |
- Opcode::VPSUBSW |
- Opcode::VPSUBUSB |
- Opcode::VPSUBUSW |
- Opcode::VPSUBW |
- Opcode::VROUNDPD |
- Opcode::VROUNDPS |
- Opcode::VEXP2PD |
- Opcode::VEXP2PS |
- Opcode::VEXP2SD |
- Opcode::VEXP2SS |
- Opcode::VRCP28PD |
- Opcode::VRCP28PS |
- Opcode::VRCP28SD |
- Opcode::VRCP28SS |
- Opcode::VRCP14PD |
- Opcode::VRCP14PS |
- Opcode::VRCP14SD |
- Opcode::VRCP14SS |
- Opcode::VRNDSCALEPD |
- Opcode::VRNDSCALEPS |
- Opcode::VRNDSCALESD |
- Opcode::VRNDSCALESS |
- Opcode::VRSQRT14PD |
- Opcode::VRSQRT14PS |
- Opcode::VRSQRT14SD |
- Opcode::VRSQRT14SS |
- Opcode::VSCALEDPD |
- Opcode::VSCALEDPS |
- Opcode::VSCALEDSD |
- Opcode::VSCALEDSS |
- Opcode::VRSQRT28PD |
- Opcode::VRSQRT28PS |
- Opcode::VRSQRT28SD |
- Opcode::VRSQRT28SS |
- Opcode::VRSQRTPS |
- Opcode::VSQRTPD |
- Opcode::VSQRTPS |
- Opcode::VSUBPD |
- Opcode::VSUBPS |
- Opcode::VSUBSD |
- Opcode::VSUBSS |
- Opcode::VRCPSS |
- Opcode::VROUNDSD |
- Opcode::VROUNDSS |
- Opcode::ROUNDPD |
- Opcode::ROUNDPS |
- Opcode::ROUNDSD |
- Opcode::ROUNDSS |
- Opcode::VRSQRTSS |
- Opcode::VSQRTSD |
- Opcode::VSQRTSS |
- Opcode::VPSADBW |
- Opcode::VMPSADBW |
- Opcode::VDBPSADBW |
- Opcode::VPHADDD |
- Opcode::VPHADDSW |
- Opcode::VPHADDW |
- Opcode::VPHSUBD |
- Opcode::VPHSUBSW |
- Opcode::VPHSUBW |
- Opcode::VPMADDUBSW |
- Opcode::VPMADDWD |
- Opcode::VDPPD |
- Opcode::VDPPS |
- Opcode::VRCPPS |
- Opcode::VORPD |
- Opcode::VORPS |
- Opcode::VANDPD |
- Opcode::VANDPS |
- Opcode::VANDNPD |
- Opcode::VANDNPS |
- Opcode::VPAND |
- Opcode::VPANDN |
- Opcode::VPOR |
- Opcode::VPXOR |
- Opcode::VXORPD |
- Opcode::VXORPS |
- Opcode::VPSLLD |
- Opcode::VPSLLDQ |
- Opcode::VPSLLQ |
- Opcode::VPSLLVD |
- Opcode::VPSLLVQ |
- Opcode::VPSLLW |
- Opcode::VPROLD |
- Opcode::VPROLQ |
- Opcode::VPROLVD |
- Opcode::VPROLVQ |
- Opcode::VPRORD |
- Opcode::VPRORQ |
- Opcode::VPRORRD |
- Opcode::VPRORRQ |
- Opcode::VPSLLVW |
- Opcode::VPSRAQ |
- Opcode::VPSRAVQ |
- Opcode::VPSRAVW |
- Opcode::VPSRLVW |
- Opcode::VPSRAD |
- Opcode::VPSRAVD |
- Opcode::VPSRAW |
- Opcode::VPSRLD |
- Opcode::VPSRLDQ |
- Opcode::VPSRLQ |
- Opcode::VPSRLVD |
- Opcode::VPSRLVQ |
- Opcode::VPSRLW |
- Opcode::PHADDD |
- Opcode::PHADDSW |
- Opcode::PHADDW |
- Opcode::PHSUBD |
- Opcode::PHSUBSW |
- Opcode::PHSUBW |
- Opcode::PMADDUBSW |
- Opcode::ADDSUBPD |
- Opcode::DPPS |
- Opcode::DPPD |
- Opcode::MPSADBW |
- Opcode::RCPSS |
- Opcode::RSQRTSS |
- Opcode::SQRTSD |
- Opcode::ADDSD |
- Opcode::SUBSD |
- Opcode::MULSD |
- Opcode::DIVSD |
- Opcode::SQRTSS |
- Opcode::ADDSS |
- Opcode::SUBSS |
- Opcode::MULSS |
- Opcode::DIVSS |
- Opcode::HADDPS |
- Opcode::HSUBPS |
- Opcode::ADDSUBPS |
- Opcode::PMULHRW |
- Opcode::PFRCP |
- Opcode::PFRSQRT |
- Opcode::PFSUB |
- Opcode::PFADD |
- Opcode::PFRCPIT1 |
- Opcode::PFRSQIT1 |
- Opcode::PFSUBR |
- Opcode::PFACC |
- Opcode::PFMUL |
- Opcode::PFMULHRW |
- Opcode::PFRCPIT2 |
- Opcode::PFNACC |
- Opcode::PFPNACC |
- Opcode::PSWAPD |
- Opcode::PAVGUSB |
- Opcode::XADD|
- Opcode::DIV |
- Opcode::IDIV |
- Opcode::MUL |
- Opcode::MULX |
- Opcode::NEG |
- Opcode::NOT |
- Opcode::SAR |
- Opcode::SAL |
- Opcode::SHR |
- Opcode::SARX |
- Opcode::SHLX |
- Opcode::SHRX |
- Opcode::SHRD |
- Opcode::SHL |
- Opcode::RCR |
- Opcode::RCL |
- Opcode::ROR |
- Opcode::RORX |
- Opcode::ROL |
- Opcode::INC |
- Opcode::DEC |
- Opcode::SBB |
- Opcode::AND |
- Opcode::XOR |
- Opcode::OR |
- Opcode::LEA |
- Opcode::ADD |
- Opcode::ADC |
- Opcode::ADCX |
- Opcode::ADOX |
- Opcode::SUB |
- Opcode::POPCNT |
- Opcode::LZCNT |
- Opcode::VPLZCNTD |
- Opcode::VPLZCNTQ |
- Opcode::BT |
- Opcode::BTS |
- Opcode::BTR |
- Opcode::BTC |
- Opcode::BSF |
- Opcode::BSR |
- Opcode::BZHI |
- Opcode::PDEP |
- Opcode::PEXT |
- Opcode::TZCNT |
- Opcode::ANDN |
- Opcode::BEXTR |
- Opcode::BLSI |
- Opcode::BLSMSK |
- Opcode::BLSR |
- Opcode::ADDPS |
- Opcode::ADDPD |
- Opcode::ANDNPS |
- Opcode::ANDNPD |
- Opcode::ANDPS |
- Opcode::ANDPD |
- Opcode::COMISD |
- Opcode::COMISS |
- Opcode::DIVPS |
- Opcode::DIVPD |
- Opcode::MULPS |
- Opcode::MULPD |
- Opcode::ORPS |
- Opcode::ORPD |
- Opcode::PADDB |
- Opcode::PADDD |
- Opcode::PADDQ |
- Opcode::PADDSB |
- Opcode::PADDSW |
- Opcode::PADDUSB |
- Opcode::PADDUSW |
- Opcode::PADDW |
- Opcode::PAND |
- Opcode::PANDN |
- Opcode::PAVGB |
- Opcode::PAVGW |
- Opcode::PMADDWD |
- Opcode::PMULHUW |
- Opcode::PMULHW |
- Opcode::PMULLW |
- Opcode::PMULUDQ |
- Opcode::POR |
- Opcode::PSADBW |
- Opcode::PSHUFD |
- Opcode::PSHUFW |
- Opcode::PSHUFB |
- Opcode::PSLLD |
- Opcode::PSLLDQ |
- Opcode::PSLLQ |
- Opcode::PSLLW |
- Opcode::PSRAD |
- Opcode::PSRAW |
- Opcode::PSRLD |
- Opcode::PSRLDQ |
- Opcode::PSRLQ |
- Opcode::PSRLW |
- Opcode::PSUBB |
- Opcode::PSUBD |
- Opcode::PSUBQ |
- Opcode::PSUBSB |
- Opcode::PSUBSW |
- Opcode::PSUBUSB |
- Opcode::PSUBUSW |
- Opcode::PSUBW |
- Opcode::PXOR |
- Opcode::RSQRTPS |
- Opcode::SQRTPS |
- Opcode::SQRTPD |
- Opcode::SUBPS |
- Opcode::SUBPD |
- Opcode::XORPS |
- Opcode::XORPD |
- Opcode::RCPPS |
- Opcode::SHLD |
- Opcode::SLHD |
- Opcode::UCOMISD |
- Opcode::UCOMISS |
- Opcode::F2XM1 |
- Opcode::FABS |
- Opcode::FADD |
- Opcode::FADDP |
- Opcode::FCHS |
- Opcode::FCOS |
- Opcode::FDIV |
- Opcode::FDIVP |
- Opcode::FDIVR |
- Opcode::FDIVRP |
- Opcode::FIADD |
- Opcode::FIDIV |
- Opcode::FIDIVR |
- Opcode::FIMUL |
- Opcode::FISUB |
- Opcode::FISUBR |
- Opcode::FMUL |
- Opcode::FMULP |
- Opcode::FNCLEX |
- Opcode::FNINIT |
- Opcode::FPATAN |
- Opcode::FPREM |
- Opcode::FPREM1 |
- Opcode::FPTAN |
- Opcode::FRNDINT |
- Opcode::FSCALE |
- Opcode::FSIN |
- Opcode::FSINCOS |
- Opcode::FSQRT |
- Opcode::FSUB |
- Opcode::FSUBP |
- Opcode::FSUBR |
- Opcode::FSUBRP |
- Opcode::FXTRACT |
- Opcode::FYL2X |
- Opcode::FYL2XP1 |
- Opcode::AAA |
- Opcode::AAS |
- Opcode::DAS |
- Opcode::DAA |
- Opcode::AAD |
- Opcode::AAM |
- Opcode::KADDB |
- Opcode::KANDB |
- Opcode::KANDNB |
- Opcode::KNOTB |
- Opcode::KORB |
- Opcode::KSHIFTLB |
- Opcode::KSHIFTRB |
- Opcode::KXNORB |
- Opcode::KXORB |
- Opcode::KADDW |
- Opcode::KANDW |
- Opcode::KANDNW |
- Opcode::KNOTW |
- Opcode::KORW |
- Opcode::KSHIFTLW |
- Opcode::KSHIFTRW |
- Opcode::KXNORW |
- Opcode::KXORW |
- Opcode::KADDD |
- Opcode::KANDD |
- Opcode::KANDND |
- Opcode::KNOTD |
- Opcode::KORD |
- Opcode::KSHIFTLD |
- Opcode::KSHIFTRD |
- Opcode::KXNORD |
- Opcode::KXORD |
- Opcode::KADDQ |
- Opcode::KANDQ |
- Opcode::KANDNQ |
- Opcode::KNOTQ |
- Opcode::KORQ |
- Opcode::KSHIFTLQ |
- Opcode::KSHIFTRQ |
- Opcode::KXNORQ |
- Opcode::KXORQ |
- Opcode::IMUL => { write!(out, "{}", colors.arithmetic_op(self)) }
- Opcode::POPF |
- Opcode::PUSHF |
- Opcode::ENTER |
- Opcode::LEAVE |
- Opcode::PUSHA |
- Opcode::POPA |
- Opcode::PUSH |
- Opcode::POP => { write!(out, "{}", colors.stack_op(self)) }
- Opcode::WAIT |
- Opcode::FNOP |
- Opcode::FDISI8087_NOP |
- Opcode::FENI8087_NOP |
- Opcode::FSETPM287_NOP |
- Opcode::PREFETCHNTA |
- Opcode::PREFETCH0 |
- Opcode::PREFETCH1 |
- Opcode::PREFETCH2 |
- Opcode::PREFETCHW |
- Opcode::NOP => { write!(out, "{}", colors.nop_op(self)) }
-
- /* Control flow */
- Opcode::HLT |
- Opcode::INT |
- Opcode::INTO |
- Opcode::IRET |
- Opcode::IRETD |
- Opcode::IRETQ |
- Opcode::RETF |
- Opcode::RETURN => { write!(out, "{}", colors.stop_op(self)) }
- Opcode::LOOPNZ |
- Opcode::LOOPZ |
- Opcode::LOOP |
- Opcode::JECXZ |
- Opcode::CALL |
- Opcode::CALLF |
- Opcode::JMP |
- Opcode::JMPF |
- Opcode::JO |
- Opcode::JNO |
- Opcode::JB |
- Opcode::JNB |
- Opcode::JZ |
- Opcode::JNZ |
- Opcode::JA |
- Opcode::JNA |
- Opcode::JS |
- Opcode::JNS |
- Opcode::JP |
- Opcode::JNP |
- Opcode::JL |
- Opcode::JGE |
- Opcode::JLE |
- Opcode::JG => { write!(out, "{}", colors.control_flow_op(self)) }
-
- /* Data transfer */
- Opcode::PI2FW |
- Opcode::PI2FD |
- Opcode::PF2ID |
- Opcode::PF2IW |
- Opcode::VCVTDQ2PD |
- Opcode::VCVTDQ2PS |
- Opcode::VCVTPD2DQ |
- Opcode::VCVTPD2PS |
- Opcode::VCVTPH2PS |
- Opcode::VCVTPS2DQ |
- Opcode::VCVTPS2PD |
- Opcode::VCVTPS2PH |
- Opcode::VCVTTPD2DQ |
- Opcode::VCVTTPS2DQ |
- Opcode::VCVTSD2SI |
- Opcode::VCVTSD2SS |
- Opcode::VCVTSI2SD |
- Opcode::VCVTSI2SS |
- Opcode::VCVTSS2SD |
- Opcode::VCVTSS2SI |
- Opcode::VCVTTSD2SI |
- Opcode::VCVTTSS2SI |
- Opcode::VCVTPD2UDQ |
- Opcode::VCVTTPD2UDQ |
- Opcode::VCVTPS2UDQ |
- Opcode::VCVTTPS2UDQ |
- Opcode::VCVTQQ2PD |
- Opcode::VCVTQQ2PS |
- Opcode::VCVTSD2USI |
- Opcode::VCVTTSD2USI |
- Opcode::VCVTSS2USI |
- Opcode::VCVTTSS2USI |
- Opcode::VCVTUDQ2PD |
- Opcode::VCVTUDQ2PS |
- Opcode::VCVTUSI2USD |
- Opcode::VCVTUSI2USS |
- Opcode::VCVTTPD2QQ |
- Opcode::VCVTPD2QQ |
- Opcode::VCVTTPD2UQQ |
- Opcode::VCVTPD2UQQ |
- Opcode::VCVTTPS2QQ |
- Opcode::VCVTPS2QQ |
- Opcode::VCVTTPS2UQQ |
- Opcode::VCVTPS2UQQ |
- Opcode::VCVTUQQ2PD |
- Opcode::VCVTUQQ2PS |
- Opcode::VMOVDDUP |
- Opcode::VPSHUFLW |
- Opcode::VPSHUFHW |
- Opcode::VBLENDMPD |
- Opcode::VBLENDMPS |
- Opcode::VPBLENDMD |
- Opcode::VPBLENDMQ |
- Opcode::VBLENDPD |
- Opcode::VBLENDPS |
- Opcode::VBLENDVPD |
- Opcode::VBLENDVPS |
- Opcode::VPBLENDMB |
- Opcode::VPBLENDMW |
- Opcode::PBLENDVB |
- Opcode::PBLENDW |
- Opcode::BLENDPD |
- Opcode::BLENDPS |
- Opcode::BLENDVPD |
- Opcode::BLENDVPS |
- Opcode::BLENDW |
- Opcode::VBROADCASTF128 |
- Opcode::VBROADCASTI128 |
- Opcode::VBROADCASTSD |
- Opcode::VBROADCASTSS |
- Opcode::VPBROADCASTM |
- Opcode::VEXTRACTF128 |
- Opcode::VEXTRACTI128 |
- Opcode::VEXTRACTPS |
- Opcode::EXTRACTPS |
- Opcode::VGATHERDPD |
- Opcode::VGATHERDPS |
- Opcode::VGATHERQPD |
- Opcode::VGATHERQPS |
- Opcode::VGATHERPF0DPD |
- Opcode::VGATHERPF0DPS |
- Opcode::VGATHERPF0QPD |
- Opcode::VGATHERPF0QPS |
- Opcode::VGATHERPF1DPD |
- Opcode::VGATHERPF1DPS |
- Opcode::VGATHERPF1QPD |
- Opcode::VGATHERPF1QPS |
- Opcode::VSCATTERDD |
- Opcode::VSCATTERDQ |
- Opcode::VSCATTERQD |
- Opcode::VSCATTERQQ |
- Opcode::VSCATTERDPS |
- Opcode::VSCATTERDPD |
- Opcode::VSCATTERQPS |
- Opcode::VSCATTERQPD |
- Opcode::VPSCATTERDD |
- Opcode::VPSCATTERDQ |
- Opcode::VPSCATTERQD |
- Opcode::VPSCATTERQQ |
- Opcode::VSCATTERPF0DPD |
- Opcode::VSCATTERPF0DPS |
- Opcode::VSCATTERPF0QPD |
- Opcode::VSCATTERPF0QPS |
- Opcode::VSCATTERPF1DPD |
- Opcode::VSCATTERPF1DPS |
- Opcode::VSCATTERPF1QPD |
- Opcode::VSCATTERPF1QPS |
- Opcode::VINSERTF128 |
- Opcode::VINSERTI128 |
- Opcode::VINSERTPS |
- Opcode::INSERTPS |
- Opcode::VEXTRACTF32X4 |
- Opcode::VEXTRACTF64X2 |
- Opcode::VEXTRACTF64X4 |
- Opcode::VEXTRACTI32X4 |
- Opcode::VEXTRACTI64X2 |
- Opcode::VEXTRACTI64X4 |
- Opcode::VINSERTF32X4 |
- Opcode::VINSERTF64X2 |
- Opcode::VINSERTF64X4 |
- Opcode::VINSERTI64X2 |
- Opcode::VINSERTI64X4 |
- Opcode::VSHUFF32X4 |
- Opcode::VSHUFF64X2 |
- Opcode::VSHUFI32X4 |
- Opcode::VSHUFI64X2 |
- Opcode::VMASKMOVDQU |
- Opcode::VMASKMOVPD |
- Opcode::VMASKMOVPS |
- Opcode::VMOVAPD |
- Opcode::VMOVAPS |
- Opcode::VMOVD |
- Opcode::VMOVDQA |
- Opcode::VMOVDQU |
- Opcode::VMOVHLPS |
- Opcode::VMOVHPD |
- Opcode::VMOVHPS |
- Opcode::VMOVLHPS |
- Opcode::VMOVLPD |
- Opcode::VMOVLPS |
- Opcode::VMOVMSKPD |
- Opcode::VMOVMSKPS |
- Opcode::VMOVNTDQ |
- Opcode::VMOVNTDQA |
- Opcode::VMOVNTPD |
- Opcode::VMOVNTPS |
- Opcode::MOVDIR64B |
- Opcode::MOVDIRI |
- Opcode::MOVNTDQA |
- Opcode::VMOVQ |
- Opcode::VMOVSHDUP |
- Opcode::VMOVSLDUP |
- Opcode::VMOVUPD |
- Opcode::VMOVUPS |
- Opcode::VMOVSD |
- Opcode::VMOVSS |
- Opcode::VMOVDQA32 |
- Opcode::VMOVDQA64 |
- Opcode::VMOVDQU32 |
- Opcode::VMOVDQU64 |
- Opcode::VPMOVM2B |
- Opcode::VPMOVM2W |
- Opcode::VPMOVB2M |
- Opcode::VPMOVW2M |
- Opcode::VPMOVSWB |
- Opcode::VPMOVUSWB |
- Opcode::VPMOVSQB |
- Opcode::VPMOVUSQB |
- Opcode::VPMOVSQW |
- Opcode::VPMOVUSQW |
- Opcode::VPMOVSQD |
- Opcode::VPMOVUSQD |
- Opcode::VPMOVSDB |
- Opcode::VPMOVUSDB |
- Opcode::VPMOVSDW |
- Opcode::VPMOVUSDW |
- Opcode::VPMOVM2D |
- Opcode::VPMOVM2Q |
- Opcode::VPMOVB2D |
- Opcode::VPMOVQ2M |
- Opcode::VMOVDQU8 |
- Opcode::VMOVDQU16 |
-
- Opcode::VPBLENDD |
- Opcode::VPBLENDVB |
- Opcode::VPBLENDW |
- Opcode::VPBROADCASTB |
- Opcode::VPBROADCASTD |
- Opcode::VPBROADCASTQ |
- Opcode::VPBROADCASTW |
- Opcode::VPGATHERDD |
- Opcode::VPGATHERDQ |
- Opcode::VPGATHERQD |
- Opcode::VPGATHERQQ |
- Opcode::VPCLMULQDQ |
- Opcode::VPMOVMSKB |
- Opcode::VPMOVSXBD |
- Opcode::VPMOVSXBQ |
- Opcode::VPMOVSXBW |
- Opcode::VPMOVSXDQ |
- Opcode::VPMOVSXWD |
- Opcode::VPMOVSXWQ |
- Opcode::VPMOVZXBD |
- Opcode::VPMOVZXBQ |
- Opcode::VPMOVZXBW |
- Opcode::VPMOVZXDQ |
- Opcode::VPMOVZXWD |
- Opcode::VPMOVZXWQ |
- Opcode::PMOVSXBD |
- Opcode::PMOVSXBQ |
- Opcode::PMOVSXBW |
- Opcode::PMOVSXDQ |
- Opcode::PMOVSXWD |
- Opcode::PMOVSXWQ |
- Opcode::PMOVZXBD |
- Opcode::PMOVZXBQ |
- Opcode::PMOVZXBW |
- Opcode::PMOVZXDQ |
- Opcode::PMOVZXWD |
- Opcode::PMOVZXWQ |
- Opcode::KUNPCKBW |
- Opcode::KUNPCKWD |
- Opcode::KUNPCKDQ |
- Opcode::VUNPCKHPD |
- Opcode::VUNPCKHPS |
- Opcode::VUNPCKLPD |
- Opcode::VUNPCKLPS |
- Opcode::VPUNPCKHBW |
- Opcode::VPUNPCKHDQ |
- Opcode::VPUNPCKHQDQ |
- Opcode::VPUNPCKHWD |
- Opcode::VPUNPCKLBW |
- Opcode::VPUNPCKLDQ |
- Opcode::VPUNPCKLQDQ |
- Opcode::VPUNPCKLWD |
- Opcode::VSHUFPD |
- Opcode::VSHUFPS |
- Opcode::VPACKSSDW |
- Opcode::VPACKUSDW |
- Opcode::PACKUSDW |
- Opcode::VPACKSSWB |
- Opcode::VPACKUSWB |
- Opcode::VALIGND |
- Opcode::VALIGNQ |
- Opcode::VPALIGNR |
- Opcode::PALIGNR |
- Opcode::VPERM2F128 |
- Opcode::VPERM2I128 |
- Opcode::VPERMD |
- Opcode::VPERMILPD |
- Opcode::VPERMILPS |
- Opcode::VPERMPD |
- Opcode::VPERMPS |
- Opcode::VPERMQ |
- Opcode::VPERMI2D |
- Opcode::VPERMI2Q |
- Opcode::VPERMI2PD |
- Opcode::VPERMI2PS |
- Opcode::VPERMT2D |
- Opcode::VPERMT2Q |
- Opcode::VPERMT2PD |
- Opcode::VPERMT2PS |
- Opcode::VPERMI2B |
- Opcode::VPERMI2W |
- Opcode::VPERMW |
- Opcode::VPEXTRB |
- Opcode::VPEXTRD |
- Opcode::VPEXTRQ |
- Opcode::VPEXTRW |
- Opcode::PEXTRB |
- Opcode::PEXTRD |
- Opcode::PEXTRQ |
- Opcode::EXTRQ |
- Opcode::PINSRB |
- Opcode::PINSRD |
- Opcode::PINSRQ |
- Opcode::INSERTQ |
- Opcode::VPINSRB |
- Opcode::VPINSRD |
- Opcode::VPINSRQ |
- Opcode::VPINSRW |
- Opcode::VPMASKMOVD |
- Opcode::VPMASKMOVQ |
- Opcode::VCOMPRESSD |
- Opcode::VCOMPRESSQ |
- Opcode::VCOMPRESSPD |
- Opcode::VCOMPRESSPS |
- Opcode::VPCOMPRESSQ |
- Opcode::VPCOMPRESSD |
- Opcode::VEXPANDPD |
- Opcode::VEXPANDPS |
- Opcode::VPSHUFB |
- Opcode::VPSHUFD |
- Opcode::VPHMINPOSUW |
- Opcode::PHMINPOSUW |
- Opcode::VZEROUPPER |
- Opcode::VZEROALL |
- Opcode::VFIXUPIMMPD |
- Opcode::VFIXUPIMMPS |
- Opcode::VFIXUPIMMSD |
- Opcode::VFIXUPIMMSS |
- Opcode::VREDUCEPD |
- Opcode::VREDUCEPS |
- Opcode::VREDUCESD |
- Opcode::VREDUCESS |
- Opcode::VGETEXPPD |
- Opcode::VGETEXPPS |
- Opcode::VGETEXPSD |
- Opcode::VGETEXPSS |
- Opcode::VGETMANTPD |
- Opcode::VGETMANTPS |
- Opcode::VGETMANTSD |
- Opcode::VGETMANTSS |
- Opcode::VLDDQU |
- Opcode::BSWAP |
- Opcode::CVTDQ2PD |
- Opcode::CVTDQ2PS |
- Opcode::CVTPS2DQ |
- Opcode::CVTPD2DQ |
- Opcode::CVTPI2PS |
- Opcode::CVTPI2PD |
- Opcode::CVTPS2PD |
- Opcode::CVTPD2PS |
- Opcode::CVTPS2PI |
- Opcode::CVTPD2PI |
- Opcode::CVTSD2SI |
- Opcode::CVTSD2SS |
- Opcode::CVTSI2SD |
- Opcode::CVTSI2SS |
- Opcode::CVTSS2SD |
- Opcode::CVTSS2SI |
- Opcode::CVTTPD2DQ |
- Opcode::CVTTPS2DQ |
- Opcode::CVTTPS2PI |
- Opcode::CVTTPD2PI |
- Opcode::CVTTSD2SI |
- Opcode::CVTTSS2SI |
- Opcode::MASKMOVQ |
- Opcode::MASKMOVDQU |
- Opcode::MOVAPS |
- Opcode::MOVAPD |
- Opcode::MOVD |
- Opcode::MOVHPS |
- Opcode::MOVHPD |
- Opcode::MOVHLPS |
- Opcode::MOVLPS |
- Opcode::MOVLPD |
- Opcode::MOVLHPS |
- Opcode::MOVMSKPS |
- Opcode::MOVMSKPD |
- Opcode::MOVNTI |
- Opcode::MOVNTPS |
- Opcode::MOVNTPD |
- Opcode::MOVNTSS |
- Opcode::MOVNTSD |
- Opcode::MOVNTQ |
- Opcode::MOVNTDQ |
- Opcode::MOVSD |
- Opcode::MOVSS |
- Opcode::MOVUPD |
- Opcode::PSHUFHW |
- Opcode::PSHUFLW |
- Opcode::PUNPCKHBW |
- Opcode::PUNPCKHDQ |
- Opcode::PUNPCKHWD |
- Opcode::PUNPCKLBW |
- Opcode::PUNPCKLDQ |
- Opcode::PUNPCKLWD |
- Opcode::PUNPCKLQDQ |
- Opcode::PUNPCKHQDQ |
- Opcode::PACKSSDW |
- Opcode::PACKSSWB |
- Opcode::PACKUSWB |
- Opcode::UNPCKHPS |
- Opcode::UNPCKHPD |
- Opcode::UNPCKLPS |
- Opcode::UNPCKLPD |
- Opcode::SHUFPD |
- Opcode::SHUFPS |
- Opcode::PMOVMSKB |
- Opcode::KMOVB |
- Opcode::KMOVW |
- Opcode::KMOVD |
- Opcode::KMOVQ |
- Opcode::BNDMOV |
- Opcode::LDDQU |
- Opcode::CMC |
- Opcode::CLC |
- Opcode::CLI |
- Opcode::CLD |
- Opcode::STC |
- Opcode::STI |
- Opcode::STD |
- Opcode::CBW |
- Opcode::CWDE |
- Opcode::CDQE |
- Opcode::CWD |
- Opcode::CDQ |
- Opcode::CQO |
- Opcode::MOVDDUP |
- Opcode::MOVSLDUP |
- Opcode::MOVDQ2Q |
- Opcode::MOVDQU |
- Opcode::MOVDQA |
- Opcode::MOVQ |
- Opcode::MOVQ2DQ |
- Opcode::MOVSHDUP |
- Opcode::MOVUPS |
- Opcode::PEXTRW |
- Opcode::PINSRW |
- Opcode::MOV |
- Opcode::MOVBE |
- Opcode::LODS |
- Opcode::STOS |
- Opcode::LAHF |
- Opcode::SAHF |
- Opcode::MOVS |
- Opcode::INS |
- Opcode::IN |
- Opcode::OUTS |
- Opcode::OUT |
- Opcode::MOVZX |
- Opcode::MOVSX |
- Opcode::MOVSXD |
- Opcode::FILD |
- Opcode::FBLD |
- Opcode::FBSTP |
- Opcode::FIST |
- Opcode::FISTP |
- Opcode::FISTTP |
- Opcode::FLD |
- Opcode::FLD1 |
- Opcode::FLDCW |
- Opcode::FLDENV |
- Opcode::FLDL2E |
- Opcode::FLDL2T |
- Opcode::FLDLG2 |
- Opcode::FLDLN2 |
- Opcode::FLDPI |
- Opcode::FLDZ |
- Opcode::FST |
- Opcode::FSTP |
- Opcode::FSTPNCE |
- Opcode::FNSAVE |
- Opcode::FNSTCW |
- Opcode::FNSTENV |
- Opcode::FNSTOR |
- Opcode::FNSTSW |
- Opcode::FRSTOR |
- Opcode::FXCH |
- Opcode::XCHG |
- Opcode::XLAT |
- Opcode::CMOVA |
- Opcode::CMOVB |
- Opcode::CMOVG |
- Opcode::CMOVGE |
- Opcode::CMOVL |
- Opcode::CMOVLE |
- Opcode::CMOVNA |
- Opcode::CMOVNB |
- Opcode::CMOVNO |
- Opcode::CMOVNP |
- Opcode::CMOVNS |
- Opcode::CMOVNZ |
- Opcode::CMOVO |
- Opcode::CMOVP |
- Opcode::CMOVS |
- Opcode::CMOVZ |
- Opcode::FCMOVB |
- Opcode::FCMOVBE |
- Opcode::FCMOVE |
- Opcode::FCMOVNB |
- Opcode::FCMOVNBE |
- Opcode::FCMOVNE |
- Opcode::FCMOVNU |
- Opcode::FCMOVU |
- Opcode::SALC |
- Opcode::SETO |
- Opcode::SETNO |
- Opcode::SETB |
- Opcode::SETAE |
- Opcode::SETZ |
- Opcode::SETNZ |
- Opcode::SETBE |
- Opcode::SETA |
- Opcode::SETS |
- Opcode::SETNS |
- Opcode::SETP |
- Opcode::SETNP |
- Opcode::SETL |
- Opcode::SETGE |
- Opcode::SETLE |
- Opcode::SETG => { write!(out, "{}", colors.data_op(self)) }
-
- Opcode::VCOMISD |
- Opcode::VCOMISS |
- Opcode::VUCOMISD |
- Opcode::VUCOMISS |
- Opcode::KORTESTB |
- Opcode::KTESTB |
- Opcode::KORTESTW |
- Opcode::KTESTW |
- Opcode::KORTESTD |
- Opcode::KTESTD |
- Opcode::KORTESTQ |
- Opcode::KTESTQ |
- Opcode::VPTESTNMD |
- Opcode::VPTESTNMQ |
- Opcode::VPTERNLOGD |
- Opcode::VPTERNLOGQ |
- Opcode::VPTESTMD |
- Opcode::VPTESTMQ |
- Opcode::VPTESTNMB |
- Opcode::VPTESTNMW |
- Opcode::VPTESTMB |
- Opcode::VPTESTMW |
- Opcode::VPCMPD |
- Opcode::VPCMPUD |
- Opcode::VPCMPQ |
- Opcode::VPCMPUQ |
- Opcode::VPCMPB |
- Opcode::VPCMPUB |
- Opcode::VPCMPW |
- Opcode::VPCMPUW |
- Opcode::VCMPPD |
- Opcode::VCMPPS |
- Opcode::VCMPSD |
- Opcode::VCMPSS |
- Opcode::VMAXPD |
- Opcode::VMAXPS |
- Opcode::VMAXSD |
- Opcode::VMAXSS |
- Opcode::VPMAXSQ |
- Opcode::VPMAXUQ |
- Opcode::VPMINSQ |
- Opcode::VPMINUQ |
- Opcode::VMINPD |
- Opcode::VMINPS |
- Opcode::VMINSD |
- Opcode::VMINSS |
- Opcode::VPCMPEQB |
- Opcode::VPCMPEQD |
- Opcode::VPCMPEQQ |
- Opcode::VPCMPEQW |
- Opcode::VPCMPGTB |
- Opcode::VPCMPGTD |
- Opcode::VPCMPGTQ |
- Opcode::VPCMPGTW |
- Opcode::VPCMPESTRI |
- Opcode::VPCMPESTRM |
- Opcode::VPCMPISTRI |
- Opcode::VPCMPISTRM |
- Opcode::VPMAXSB |
- Opcode::VPMAXSD |
- Opcode::VPMAXSW |
- Opcode::VPMAXUB |
- Opcode::VPMAXUW |
- Opcode::VPMAXUD |
- Opcode::VPMINSB |
- Opcode::VPMINSW |
- Opcode::VPMINSD |
- Opcode::VPMINUB |
- Opcode::VPMINUW |
- Opcode::VPMINUD |
- Opcode::VFPCLASSPD |
- Opcode::VFPCLASSPS |
- Opcode::VFPCLASSSD |
- Opcode::VFPCLASSSS |
- Opcode::VRANGEPD |
- Opcode::VRANGEPS |
- Opcode::VRANGESD |
- Opcode::VRANGESS |
- Opcode::VPCONFLICTD |
- Opcode::VPCONFLICTQ |
- Opcode::VPTEST |
- Opcode::VTESTPD |
- Opcode::VTESTPS |
- Opcode::PCMPEQB |
- Opcode::PCMPEQD |
- Opcode::PCMPEQQ |
- Opcode::PCMPEQW |
- Opcode::PCMPESTRI |
- Opcode::PCMPESTRM |
- Opcode::PCMPGTB |
- Opcode::PCMPGTD |
- Opcode::PCMPGTQ |
- Opcode::PCMPGTW |
- Opcode::PCMPISTRI |
- Opcode::PCMPISTRM |
- Opcode::PTEST |
- Opcode::MAXPD |
- Opcode::MAXPS |
- Opcode::MAXSD |
- Opcode::MAXSS |
- Opcode::MINPD |
- Opcode::MINPS |
- Opcode::MINSD |
- Opcode::MINSS |
- Opcode::PMAXSB |
- Opcode::PMAXSD |
- Opcode::PMAXSW |
- Opcode::PMAXUB |
- Opcode::PMAXUD |
- Opcode::PMAXUW |
- Opcode::PMINSB |
- Opcode::PMINSD |
- Opcode::PMINSW |
- Opcode::PMINUB |
- Opcode::PMINUD |
- Opcode::PMINUW |
- Opcode::PFCMPGE |
- Opcode::PFMIN |
- Opcode::PFCMPGT |
- Opcode::PFMAX |
- Opcode::PFCMPEQ |
- Opcode::CMPS |
- Opcode::SCAS |
- Opcode::TEST |
- Opcode::FTST |
- Opcode::FXAM |
- Opcode::FUCOM |
- Opcode::FUCOMI |
- Opcode::FUCOMIP |
- Opcode::FUCOMP |
- Opcode::FUCOMPP |
- Opcode::FCOM |
- Opcode::FCOMI |
- Opcode::FCOMIP |
- Opcode::FCOMP |
- Opcode::FCOMPP |
- Opcode::FICOM |
- Opcode::FICOMP |
- Opcode::CMPSD |
- Opcode::CMPSS |
- Opcode::CMP |
- Opcode::CMPPS |
- Opcode::CMPPD |
- Opcode::CMPXCHG8B |
- Opcode::CMPXCHG16B |
- Opcode::CMPXCHG => { write!(out, "{}", colors.comparison_op(self)) }
-
- Opcode::WRMSR |
- Opcode::RDMSR |
- Opcode::RDTSC |
- Opcode::RDPMC |
- Opcode::RDPID |
- Opcode::RDFSBASE |
- Opcode::RDGSBASE |
- Opcode::WRFSBASE |
- Opcode::WRGSBASE |
- Opcode::FXSAVE |
- Opcode::FXRSTOR |
- Opcode::LDMXCSR |
- Opcode::STMXCSR |
- Opcode::VLDMXCSR |
- Opcode::VSTMXCSR |
- Opcode::XSAVE |
- Opcode::XSAVEC |
- Opcode::XSAVES |
- Opcode::XSAVEC64 |
- Opcode::XSAVES64 |
- Opcode::XRSTOR |
- Opcode::XRSTORS |
- Opcode::XRSTORS64 |
- Opcode::XSAVEOPT |
- Opcode::LFENCE |
- Opcode::MFENCE |
- Opcode::SFENCE |
- Opcode::CLFLUSH |
- Opcode::CLFLUSHOPT |
- Opcode::CLWB |
- Opcode::LDS |
- Opcode::LES |
- Opcode::SGDT |
- Opcode::SIDT |
- Opcode::LGDT |
- Opcode::LIDT |
- Opcode::SMSW |
- Opcode::LMSW |
- Opcode::SWAPGS |
- Opcode::RDTSCP |
- Opcode::INVEPT |
- Opcode::INVVPID |
- Opcode::INVPCID |
- Opcode::INVLPG |
- Opcode::INVLPGA |
- Opcode::INVLPGB |
- Opcode::TLBSYNC |
- Opcode::PSMASH |
- Opcode::PVALIDATE |
- Opcode::RMPADJUST |
- Opcode::RMPUPDATE |
- Opcode::CPUID |
- Opcode::WBINVD |
- Opcode::INVD |
- Opcode::SYSRET |
- Opcode::CLTS |
- Opcode::SYSCALL |
- Opcode::TDCALL |
- Opcode::SEAMRET |
- Opcode::SEAMOPS |
- Opcode::SEAMCALL |
- Opcode::TPAUSE |
- Opcode::UMONITOR |
- Opcode::UMWAIT |
- Opcode::LSL |
- Opcode::SLDT |
- Opcode::STR |
- Opcode::LLDT |
- Opcode::LTR |
- Opcode::VERR |
- Opcode::VERW |
- Opcode::JMPE |
- Opcode::EMMS |
- Opcode::FEMMS |
- Opcode::GETSEC |
- Opcode::LFS |
- Opcode::LGS |
- Opcode::LSS |
- Opcode::RSM |
- Opcode::SYSENTER |
- Opcode::SYSEXIT |
- Opcode::VMREAD |
- Opcode::VMWRITE |
- Opcode::VMCLEAR |
- Opcode::VMPTRLD |
- Opcode::VMPTRST |
- Opcode::VMXON |
- Opcode::VMCALL |
- Opcode::VMLAUNCH |
- Opcode::VMRESUME |
- Opcode::VMLOAD |
- Opcode::VMMCALL |
- Opcode::VMSAVE |
- Opcode::VMRUN |
- Opcode::VMXOFF |
- Opcode::PCONFIG |
- Opcode::MONITOR |
- Opcode::MWAIT |
- Opcode::MONITORX |
- Opcode::MWAITX |
- Opcode::SKINIT |
- Opcode::CLGI |
- Opcode::STGI |
- Opcode::CLAC |
- Opcode::STAC |
- Opcode::ENCLS |
- Opcode::ENCLV |
- Opcode::XGETBV |
- Opcode::XSETBV |
- Opcode::VMFUNC |
- Opcode::XEND |
- Opcode::XTEST |
- Opcode::XABORT |
- Opcode::XBEGIN |
- Opcode::ENCLU |
- Opcode::RDPKRU |
- Opcode::WRPKRU |
- Opcode::RDPRU |
- Opcode::CLZERO |
- Opcode::ENQCMD |
- Opcode::ENQCMDS |
- Opcode::PTWRITE |
- Opcode::UIRET |
- Opcode::TESTUI |
- Opcode::CLUI |
- Opcode::STUI |
- Opcode::SENDUIPI |
- Opcode::XSUSLDTRK |
- Opcode::XRESLDTRK |
- Opcode::BOUND |
- Opcode::ARPL |
- Opcode::BNDMK |
- Opcode::BNDCL |
- Opcode::BNDCU |
- Opcode::BNDCN |
- Opcode::BNDLDX |
- Opcode::BNDSTX |
- Opcode::LAR => { write!(out, "{}", colors.platform_op(self)) }
-
- Opcode::CRC32 |
- Opcode::RDSEED |
- Opcode::RDRAND |
- Opcode::SHA1RNDS4 |
- Opcode::SHA1NEXTE |
- Opcode::SHA1MSG1 |
- Opcode::SHA1MSG2 |
- Opcode::SHA256RNDS2 |
- Opcode::SHA256MSG1 |
- Opcode::SHA256MSG2 |
- Opcode::FFREE |
- Opcode::FFREEP |
- Opcode::FDECSTP |
- Opcode::FINCSTP |
- Opcode::GF2P8MULB |
- Opcode::GF2P8AFFINEQB |
- Opcode::GF2P8AFFINEINVQB |
- Opcode::AESDEC128KL |
- Opcode::AESDEC256KL |
- Opcode::AESDECWIDE128KL |
- Opcode::AESDECWIDE256KL |
- Opcode::AESENC128KL |
- Opcode::AESENC256KL |
- Opcode::AESENCWIDE128KL |
- Opcode::AESENCWIDE256KL |
- Opcode::ENCODEKEY128 |
- Opcode::ENCODEKEY256 |
- Opcode::LOADIWKEY |
- Opcode::HRESET |
- Opcode::WRUSS |
- Opcode::WRSS |
- Opcode::INCSSP |
- Opcode::SAVEPREVSSP |
- Opcode::SETSSBSY |
- Opcode::CLRSSBSY |
- Opcode::RSTORSSP |
- Opcode::ENDBR64 |
- Opcode::ENDBR32 |
- Opcode::AESDEC |
- Opcode::AESDECLAST |
- Opcode::AESENC |
- Opcode::AESENCLAST |
- Opcode::AESIMC |
- Opcode::AESKEYGENASSIST |
- Opcode::VAESDEC |
- Opcode::VAESDECLAST |
- Opcode::VAESENC |
- Opcode::VAESENCLAST |
- Opcode::VAESIMC |
- Opcode::VAESKEYGENASSIST => { write!(out, "{}", colors.misc_op(self)) }
-
- Opcode::UD0 |
- Opcode::UD1 |
- Opcode::UD2 |
- Opcode::Invalid => { write!(out, "{}", colors.invalid_op(self)) }
- }
- }
-}
-
impl fmt::Display for Instruction {
fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
self.display_with(DisplayStyle::Intel).colorize(&NoColors, fmt)
diff --git a/src/real_mode/display.rs b/src/real_mode/display.rs
index 5783d1a..2263886 100644
--- a/src/real_mode/display.rs
+++ b/src/real_mode/display.rs
@@ -345,1462 +345,6 @@ impl fmt::Display for Opcode {
}
}
-impl Opcode {
- fn name(&self) -> &'static str {
- unsafe {
- crate::generated::opcode::MNEMONICS.get_kinda_unchecked(*self as usize)
- }
- }
-}
-
-impl <T: fmt::Write, Y: YaxColors> Colorize<T, Y> for Opcode {
- fn colorize(&self, colors: &Y, out: &mut T) -> fmt::Result {
- match self {
- Opcode::VGF2P8AFFINEQB |
- Opcode::VGF2P8AFFINEINVQB |
- Opcode::VPSHRDQ |
- Opcode::VPSHRDD |
- Opcode::VPSHRDW |
- Opcode::VPSHLDQ |
- Opcode::VPSHLDD |
- Opcode::VPSHLDW |
- Opcode::VBROADCASTF32X8 |
- Opcode::VBROADCASTF64X4 |
- Opcode::VBROADCASTF32X4 |
- Opcode::VBROADCASTF64X2 |
- Opcode::VBROADCASTF32X2 |
- Opcode::VBROADCASTI32X8 |
- Opcode::VBROADCASTI64X4 |
- Opcode::VBROADCASTI32X4 |
- Opcode::VBROADCASTI64X2 |
- Opcode::VBROADCASTI32X2 |
- Opcode::VEXTRACTI32X8 |
- Opcode::VEXTRACTF32X8 |
- Opcode::VINSERTI32X8 |
- Opcode::VINSERTF32X8 |
- Opcode::VINSERTI32X4 |
- Opcode::V4FNMADDSS |
- Opcode::V4FNMADDPS |
- Opcode::VCVTNEPS2BF16 |
- Opcode::V4FMADDSS |
- Opcode::V4FMADDPS |
- Opcode::VCVTNE2PS2BF16 |
- Opcode::VP2INTERSECTD |
- Opcode::VP2INTERSECTQ |
- Opcode::VP4DPWSSDS |
- Opcode::VP4DPWSSD |
- Opcode::VPDPWSSDS |
- Opcode::VPDPWSSD |
- Opcode::VPDPBUSDS |
- Opcode::VDPBF16PS |
- Opcode::VPBROADCASTMW2D |
- Opcode::VPBROADCASTMB2Q |
- Opcode::VPMOVD2M |
- Opcode::VPMOVQD |
- Opcode::VPMOVWB |
- Opcode::VPMOVDB |
- Opcode::VPMOVDW |
- Opcode::VPMOVQB |
- Opcode::VPMOVQW |
- Opcode::VGF2P8MULB |
- Opcode::VPMADD52HUQ |
- Opcode::VPMADD52LUQ |
- Opcode::VPSHUFBITQMB |
- Opcode::VPERMB |
- Opcode::VPEXPANDD |
- Opcode::VPEXPANDQ |
- Opcode::VPABSQ |
- Opcode::VPRORVD |
- Opcode::VPRORVQ |
- Opcode::VPMULTISHIFTQB |
- Opcode::VPERMT2B |
- Opcode::VPERMT2W |
- Opcode::VPSHRDVQ |
- Opcode::VPSHRDVD |
- Opcode::VPSHRDVW |
- Opcode::VPSHLDVQ |
- Opcode::VPSHLDVD |
- Opcode::VPSHLDVW |
- Opcode::VPCOMPRESSB |
- Opcode::VPCOMPRESSW |
- Opcode::VPEXPANDB |
- Opcode::VPEXPANDW |
- Opcode::VPOPCNTD |
- Opcode::VPOPCNTQ |
- Opcode::VPOPCNTB |
- Opcode::VPOPCNTW |
- Opcode::VSCALEFSS |
- Opcode::VSCALEFSD |
- Opcode::VSCALEFPS |
- Opcode::VSCALEFPD |
- Opcode::VPDPBUSD |
- Opcode::VCVTUSI2SD |
- Opcode::VCVTUSI2SS |
- Opcode::VPXORD |
- Opcode::VPXORQ |
- Opcode::VPORD |
- Opcode::VPORQ |
- Opcode::VPANDND |
- Opcode::VPANDNQ |
- Opcode::VPANDD |
- Opcode::VPANDQ |
-
- Opcode::VHADDPS |
- Opcode::VHSUBPS |
- Opcode::VADDSUBPS |
- Opcode::VADDPD |
- Opcode::VADDPS |
- Opcode::VADDSD |
- Opcode::VADDSS |
- Opcode::VADDSUBPD |
- Opcode::VFMADD132PD |
- Opcode::VFMADD132PS |
- Opcode::VFMADD132SD |
- Opcode::VFMADD132SS |
- Opcode::VFMADD213PD |
- Opcode::VFMADD213PS |
- Opcode::VFMADD213SD |
- Opcode::VFMADD213SS |
- Opcode::VFMADD231PD |
- Opcode::VFMADD231PS |
- Opcode::VFMADD231SD |
- Opcode::VFMADD231SS |
- Opcode::VFMADDSUB132PD |
- Opcode::VFMADDSUB132PS |
- Opcode::VFMADDSUB213PD |
- Opcode::VFMADDSUB213PS |
- Opcode::VFMADDSUB231PD |
- Opcode::VFMADDSUB231PS |
- Opcode::VFMSUB132PD |
- Opcode::VFMSUB132PS |
- Opcode::VFMSUB132SD |
- Opcode::VFMSUB132SS |
- Opcode::VFMSUB213PD |
- Opcode::VFMSUB213PS |
- Opcode::VFMSUB213SD |
- Opcode::VFMSUB213SS |
- Opcode::VFMSUB231PD |
- Opcode::VFMSUB231PS |
- Opcode::VFMSUB231SD |
- Opcode::VFMSUB231SS |
- Opcode::VFMSUBADD132PD |
- Opcode::VFMSUBADD132PS |
- Opcode::VFMSUBADD213PD |
- Opcode::VFMSUBADD213PS |
- Opcode::VFMSUBADD231PD |
- Opcode::VFMSUBADD231PS |
- Opcode::VFNMADD132PD |
- Opcode::VFNMADD132PS |
- Opcode::VFNMADD132SD |
- Opcode::VFNMADD132SS |
- Opcode::VFNMADD213PD |
- Opcode::VFNMADD213PS |
- Opcode::VFNMADD213SD |
- Opcode::VFNMADD213SS |
- Opcode::VFNMADD231PD |
- Opcode::VFNMADD231PS |
- Opcode::VFNMADD231SD |
- Opcode::VFNMADD231SS |
- Opcode::VFNMSUB132PD |
- Opcode::VFNMSUB132PS |
- Opcode::VFNMSUB132SD |
- Opcode::VFNMSUB132SS |
- Opcode::VFNMSUB213PD |
- Opcode::VFNMSUB213PS |
- Opcode::VFNMSUB213SD |
- Opcode::VFNMSUB213SS |
- Opcode::VFNMSUB231PD |
- Opcode::VFNMSUB231PS |
- Opcode::VFNMSUB231SD |
- Opcode::VFNMSUB231SS |
- Opcode::VDIVPD |
- Opcode::VDIVPS |
- Opcode::VDIVSD |
- Opcode::VDIVSS |
- Opcode::VHADDPD |
- Opcode::VHSUBPD |
- Opcode::HADDPD |
- Opcode::HSUBPD |
- Opcode::VMULPD |
- Opcode::VMULPS |
- Opcode::VMULSD |
- Opcode::VMULSS |
- Opcode::VPABSB |
- Opcode::VPABSD |
- Opcode::VPABSW |
- Opcode::PABSB |
- Opcode::PABSD |
- Opcode::PABSW |
- Opcode::VPSIGNB |
- Opcode::VPSIGND |
- Opcode::VPSIGNW |
- Opcode::PSIGNB |
- Opcode::PSIGND |
- Opcode::PSIGNW |
- Opcode::VPADDB |
- Opcode::VPADDD |
- Opcode::VPADDQ |
- Opcode::VPADDSB |
- Opcode::VPADDSW |
- Opcode::VPADDUSB |
- Opcode::VPADDUSW |
- Opcode::VPADDW |
- Opcode::VPAVGB |
- Opcode::VPAVGW |
- Opcode::VPMULDQ |
- Opcode::VPMULHRSW |
- Opcode::VPMULHUW |
- Opcode::VPMULHW |
- Opcode::VPMULLQ |
- Opcode::VPMULLD |
- Opcode::VPMULLW |
- Opcode::VPMULUDQ |
- Opcode::PCLMULQDQ |
- Opcode::PMULDQ |
- Opcode::PMULHRSW |
- Opcode::PMULLD |
- Opcode::VPSUBB |
- Opcode::VPSUBD |
- Opcode::VPSUBQ |
- Opcode::VPSUBSB |
- Opcode::VPSUBSW |
- Opcode::VPSUBUSB |
- Opcode::VPSUBUSW |
- Opcode::VPSUBW |
- Opcode::VROUNDPD |
- Opcode::VROUNDPS |
- Opcode::VEXP2PD |
- Opcode::VEXP2PS |
- Opcode::VEXP2SD |
- Opcode::VEXP2SS |
- Opcode::VRCP28PD |
- Opcode::VRCP28PS |
- Opcode::VRCP28SD |
- Opcode::VRCP28SS |
- Opcode::VRCP14PD |
- Opcode::VRCP14PS |
- Opcode::VRCP14SD |
- Opcode::VRCP14SS |
- Opcode::VRNDSCALEPD |
- Opcode::VRNDSCALEPS |
- Opcode::VRNDSCALESD |
- Opcode::VRNDSCALESS |
- Opcode::VRSQRT14PD |
- Opcode::VRSQRT14PS |
- Opcode::VRSQRT14SD |
- Opcode::VRSQRT14SS |
- Opcode::VSCALEDPD |
- Opcode::VSCALEDPS |
- Opcode::VSCALEDSD |
- Opcode::VSCALEDSS |
- Opcode::VRSQRT28PD |
- Opcode::VRSQRT28PS |
- Opcode::VRSQRT28SD |
- Opcode::VRSQRT28SS |
- Opcode::VRSQRTPS |
- Opcode::VSQRTPD |
- Opcode::VSQRTPS |
- Opcode::VSUBPD |
- Opcode::VSUBPS |
- Opcode::VSUBSD |
- Opcode::VSUBSS |
- Opcode::VRCPSS |
- Opcode::VROUNDSD |
- Opcode::VROUNDSS |
- Opcode::ROUNDPD |
- Opcode::ROUNDPS |
- Opcode::ROUNDSD |
- Opcode::ROUNDSS |
- Opcode::VRSQRTSS |
- Opcode::VSQRTSD |
- Opcode::VSQRTSS |
- Opcode::VPSADBW |
- Opcode::VMPSADBW |
- Opcode::VDBPSADBW |
- Opcode::VPHADDD |
- Opcode::VPHADDSW |
- Opcode::VPHADDW |
- Opcode::VPHSUBD |
- Opcode::VPHSUBSW |
- Opcode::VPHSUBW |
- Opcode::VPMADDUBSW |
- Opcode::VPMADDWD |
- Opcode::VDPPD |
- Opcode::VDPPS |
- Opcode::VRCPPS |
- Opcode::VORPD |
- Opcode::VORPS |
- Opcode::VANDPD |
- Opcode::VANDPS |
- Opcode::VANDNPD |
- Opcode::VANDNPS |
- Opcode::VPAND |
- Opcode::VPANDN |
- Opcode::VPOR |
- Opcode::VPXOR |
- Opcode::VXORPD |
- Opcode::VXORPS |
- Opcode::VPSLLD |
- Opcode::VPSLLDQ |
- Opcode::VPSLLQ |
- Opcode::VPSLLVD |
- Opcode::VPSLLVQ |
- Opcode::VPSLLW |
- Opcode::VPROLD |
- Opcode::VPROLQ |
- Opcode::VPROLVD |
- Opcode::VPROLVQ |
- Opcode::VPRORD |
- Opcode::VPRORQ |
- Opcode::VPRORRD |
- Opcode::VPRORRQ |
- Opcode::VPSLLVW |
- Opcode::VPSRAQ |
- Opcode::VPSRAVQ |
- Opcode::VPSRAVW |
- Opcode::VPSRLVW |
- Opcode::VPSRAD |
- Opcode::VPSRAVD |
- Opcode::VPSRAW |
- Opcode::VPSRLD |
- Opcode::VPSRLDQ |
- Opcode::VPSRLQ |
- Opcode::VPSRLVD |
- Opcode::VPSRLVQ |
- Opcode::VPSRLW |
- Opcode::PHADDD |
- Opcode::PHADDSW |
- Opcode::PHADDW |
- Opcode::PHSUBD |
- Opcode::PHSUBSW |
- Opcode::PHSUBW |
- Opcode::PMADDUBSW |
- Opcode::ADDSUBPD |
- Opcode::DPPS |
- Opcode::DPPD |
- Opcode::MPSADBW |
- Opcode::RCPSS |
- Opcode::RSQRTSS |
- Opcode::SQRTSD |
- Opcode::ADDSD |
- Opcode::SUBSD |
- Opcode::MULSD |
- Opcode::DIVSD |
- Opcode::SQRTSS |
- Opcode::ADDSS |
- Opcode::SUBSS |
- Opcode::MULSS |
- Opcode::DIVSS |
- Opcode::HADDPS |
- Opcode::HSUBPS |
- Opcode::ADDSUBPS |
- Opcode::PMULHRW |
- Opcode::PFRCP |
- Opcode::PFRSQRT |
- Opcode::PFSUB |
- Opcode::PFADD |
- Opcode::PFRCPIT1 |
- Opcode::PFRSQIT1 |
- Opcode::PFSUBR |
- Opcode::PFACC |
- Opcode::PFMUL |
- Opcode::PFMULHRW |
- Opcode::PFRCPIT2 |
- Opcode::PFNACC |
- Opcode::PFPNACC |
- Opcode::PSWAPD |
- Opcode::PAVGUSB |
- Opcode::XADD|
- Opcode::DIV |
- Opcode::IDIV |
- Opcode::MUL |
- Opcode::MULX |
- Opcode::NEG |
- Opcode::NOT |
- Opcode::SAR |
- Opcode::SAL |
- Opcode::SHR |
- Opcode::SARX |
- Opcode::SHLX |
- Opcode::SHRX |
- Opcode::SHRD |
- Opcode::SHL |
- Opcode::RCR |
- Opcode::RCL |
- Opcode::ROR |
- Opcode::RORX |
- Opcode::ROL |
- Opcode::INC |
- Opcode::DEC |
- Opcode::SBB |
- Opcode::AND |
- Opcode::XOR |
- Opcode::OR |
- Opcode::LEA |
- Opcode::ADD |
- Opcode::ADC |
- Opcode::ADCX |
- Opcode::ADOX |
- Opcode::SUB |
- Opcode::POPCNT |
- Opcode::LZCNT |
- Opcode::VPLZCNTD |
- Opcode::VPLZCNTQ |
- Opcode::BT |
- Opcode::BTS |
- Opcode::BTR |
- Opcode::BTC |
- Opcode::BSF |
- Opcode::BSR |
- Opcode::BZHI |
- Opcode::PDEP |
- Opcode::PEXT |
- Opcode::TZCNT |
- Opcode::ANDN |
- Opcode::BEXTR |
- Opcode::BLSI |
- Opcode::BLSMSK |
- Opcode::BLSR |
- Opcode::ADDPS |
- Opcode::ADDPD |
- Opcode::ANDNPS |
- Opcode::ANDNPD |
- Opcode::ANDPS |
- Opcode::ANDPD |
- Opcode::COMISD |
- Opcode::COMISS |
- Opcode::DIVPS |
- Opcode::DIVPD |
- Opcode::MULPS |
- Opcode::MULPD |
- Opcode::ORPS |
- Opcode::ORPD |
- Opcode::PADDB |
- Opcode::PADDD |
- Opcode::PADDQ |
- Opcode::PADDSB |
- Opcode::PADDSW |
- Opcode::PADDUSB |
- Opcode::PADDUSW |
- Opcode::PADDW |
- Opcode::PAND |
- Opcode::PANDN |
- Opcode::PAVGB |
- Opcode::PAVGW |
- Opcode::PMADDWD |
- Opcode::PMULHUW |
- Opcode::PMULHW |
- Opcode::PMULLW |
- Opcode::PMULUDQ |
- Opcode::POR |
- Opcode::PSADBW |
- Opcode::PSHUFD |
- Opcode::PSHUFW |
- Opcode::PSHUFB |
- Opcode::PSLLD |
- Opcode::PSLLDQ |
- Opcode::PSLLQ |
- Opcode::PSLLW |
- Opcode::PSRAD |
- Opcode::PSRAW |
- Opcode::PSRLD |
- Opcode::PSRLDQ |
- Opcode::PSRLQ |
- Opcode::PSRLW |
- Opcode::PSUBB |
- Opcode::PSUBD |
- Opcode::PSUBQ |
- Opcode::PSUBSB |
- Opcode::PSUBSW |
- Opcode::PSUBUSB |
- Opcode::PSUBUSW |
- Opcode::PSUBW |
- Opcode::PXOR |
- Opcode::RSQRTPS |
- Opcode::SQRTPS |
- Opcode::SQRTPD |
- Opcode::SUBPS |
- Opcode::SUBPD |
- Opcode::XORPS |
- Opcode::XORPD |
- Opcode::RCPPS |
- Opcode::SHLD |
- Opcode::SLHD |
- Opcode::UCOMISD |
- Opcode::UCOMISS |
- Opcode::F2XM1 |
- Opcode::FABS |
- Opcode::FADD |
- Opcode::FADDP |
- Opcode::FCHS |
- Opcode::FCOS |
- Opcode::FDIV |
- Opcode::FDIVP |
- Opcode::FDIVR |
- Opcode::FDIVRP |
- Opcode::FIADD |
- Opcode::FIDIV |
- Opcode::FIDIVR |
- Opcode::FIMUL |
- Opcode::FISUB |
- Opcode::FISUBR |
- Opcode::FMUL |
- Opcode::FMULP |
- Opcode::FNCLEX |
- Opcode::FNINIT |
- Opcode::FPATAN |
- Opcode::FPREM |
- Opcode::FPREM1 |
- Opcode::FPTAN |
- Opcode::FRNDINT |
- Opcode::FSCALE |
- Opcode::FSIN |
- Opcode::FSINCOS |
- Opcode::FSQRT |
- Opcode::FSUB |
- Opcode::FSUBP |
- Opcode::FSUBR |
- Opcode::FSUBRP |
- Opcode::FXTRACT |
- Opcode::FYL2X |
- Opcode::FYL2XP1 |
- Opcode::AAA |
- Opcode::AAS |
- Opcode::DAS |
- Opcode::DAA |
- Opcode::AAD |
- Opcode::AAM |
- Opcode::KADDB |
- Opcode::KANDB |
- Opcode::KANDNB |
- Opcode::KNOTB |
- Opcode::KORB |
- Opcode::KSHIFTLB |
- Opcode::KSHIFTRB |
- Opcode::KXNORB |
- Opcode::KXORB |
- Opcode::KADDW |
- Opcode::KANDW |
- Opcode::KANDNW |
- Opcode::KNOTW |
- Opcode::KORW |
- Opcode::KSHIFTLW |
- Opcode::KSHIFTRW |
- Opcode::KXNORW |
- Opcode::KXORW |
- Opcode::KADDD |
- Opcode::KANDD |
- Opcode::KANDND |
- Opcode::KNOTD |
- Opcode::KORD |
- Opcode::KSHIFTLD |
- Opcode::KSHIFTRD |
- Opcode::KXNORD |
- Opcode::KXORD |
- Opcode::KADDQ |
- Opcode::KANDQ |
- Opcode::KANDNQ |
- Opcode::KNOTQ |
- Opcode::KORQ |
- Opcode::KSHIFTLQ |
- Opcode::KSHIFTRQ |
- Opcode::KXNORQ |
- Opcode::KXORQ |
- Opcode::IMUL => { write!(out, "{}", colors.arithmetic_op(self)) }
- Opcode::POPF |
- Opcode::PUSHF |
- Opcode::ENTER |
- Opcode::LEAVE |
- Opcode::PUSHA |
- Opcode::POPA |
- Opcode::PUSH |
- Opcode::POP => { write!(out, "{}", colors.stack_op(self)) }
- Opcode::WAIT |
- Opcode::FNOP |
- Opcode::FDISI8087_NOP |
- Opcode::FENI8087_NOP |
- Opcode::FSETPM287_NOP |
- Opcode::PREFETCHNTA |
- Opcode::PREFETCH0 |
- Opcode::PREFETCH1 |
- Opcode::PREFETCH2 |
- Opcode::PREFETCHW |
- Opcode::NOP => { write!(out, "{}", colors.nop_op(self)) }
-
- /* Control flow */
- Opcode::HLT |
- Opcode::INT |
- Opcode::INTO |
- Opcode::IRET |
- Opcode::IRETD |
- Opcode::IRETQ |
- Opcode::RETF |
- Opcode::RETURN => { write!(out, "{}", colors.stop_op(self)) }
- Opcode::LOOPNZ |
- Opcode::LOOPZ |
- Opcode::LOOP |
- Opcode::JCXZ |
- Opcode::CALL |
- Opcode::CALLF |
- Opcode::JMP |
- Opcode::JMPF |
- Opcode::JO |
- Opcode::JNO |
- Opcode::JB |
- Opcode::JNB |
- Opcode::JZ |
- Opcode::JNZ |
- Opcode::JA |
- Opcode::JNA |
- Opcode::JS |
- Opcode::JNS |
- Opcode::JP |
- Opcode::JNP |
- Opcode::JL |
- Opcode::JGE |
- Opcode::JLE |
- Opcode::JG => { write!(out, "{}", colors.control_flow_op(self)) }
-
- /* Data transfer */
- Opcode::PI2FW |
- Opcode::PI2FD |
- Opcode::PF2ID |
- Opcode::PF2IW |
- Opcode::VCVTDQ2PD |
- Opcode::VCVTDQ2PS |
- Opcode::VCVTPD2DQ |
- Opcode::VCVTPD2PS |
- Opcode::VCVTPH2PS |
- Opcode::VCVTPS2DQ |
- Opcode::VCVTPS2PD |
- Opcode::VCVTPS2PH |
- Opcode::VCVTTPD2DQ |
- Opcode::VCVTTPS2DQ |
- Opcode::VCVTSD2SI |
- Opcode::VCVTSD2SS |
- Opcode::VCVTSI2SD |
- Opcode::VCVTSI2SS |
- Opcode::VCVTSS2SD |
- Opcode::VCVTSS2SI |
- Opcode::VCVTTSD2SI |
- Opcode::VCVTTSS2SI |
- Opcode::VCVTPD2UDQ |
- Opcode::VCVTTPD2UDQ |
- Opcode::VCVTPS2UDQ |
- Opcode::VCVTTPS2UDQ |
- Opcode::VCVTQQ2PD |
- Opcode::VCVTQQ2PS |
- Opcode::VCVTSD2USI |
- Opcode::VCVTTSD2USI |
- Opcode::VCVTSS2USI |
- Opcode::VCVTTSS2USI |
- Opcode::VCVTUDQ2PD |
- Opcode::VCVTUDQ2PS |
- Opcode::VCVTUSI2USD |
- Opcode::VCVTUSI2USS |
- Opcode::VCVTTPD2QQ |
- Opcode::VCVTPD2QQ |
- Opcode::VCVTTPD2UQQ |
- Opcode::VCVTPD2UQQ |
- Opcode::VCVTTPS2QQ |
- Opcode::VCVTPS2QQ |
- Opcode::VCVTTPS2UQQ |
- Opcode::VCVTPS2UQQ |
- Opcode::VCVTUQQ2PD |
- Opcode::VCVTUQQ2PS |
- Opcode::VMOVDDUP |
- Opcode::VPSHUFLW |
- Opcode::VPSHUFHW |
- Opcode::VBLENDMPD |
- Opcode::VBLENDMPS |
- Opcode::VPBLENDMD |
- Opcode::VPBLENDMQ |
- Opcode::VBLENDPD |
- Opcode::VBLENDPS |
- Opcode::VBLENDVPD |
- Opcode::VBLENDVPS |
- Opcode::VPBLENDMB |
- Opcode::VPBLENDMW |
- Opcode::PBLENDVB |
- Opcode::PBLENDW |
- Opcode::BLENDPD |
- Opcode::BLENDPS |
- Opcode::BLENDVPD |
- Opcode::BLENDVPS |
- Opcode::BLENDW |
- Opcode::VBROADCASTF128 |
- Opcode::VBROADCASTI128 |
- Opcode::VBROADCASTSD |
- Opcode::VBROADCASTSS |
- Opcode::VPBROADCASTM |
- Opcode::VEXTRACTF128 |
- Opcode::VEXTRACTI128 |
- Opcode::VEXTRACTPS |
- Opcode::EXTRACTPS |
- Opcode::VGATHERDPD |
- Opcode::VGATHERDPS |
- Opcode::VGATHERQPD |
- Opcode::VGATHERQPS |
- Opcode::VGATHERPF0DPD |
- Opcode::VGATHERPF0DPS |
- Opcode::VGATHERPF0QPD |
- Opcode::VGATHERPF0QPS |
- Opcode::VGATHERPF1DPD |
- Opcode::VGATHERPF1DPS |
- Opcode::VGATHERPF1QPD |
- Opcode::VGATHERPF1QPS |
- Opcode::VSCATTERDD |
- Opcode::VSCATTERDQ |
- Opcode::VSCATTERQD |
- Opcode::VSCATTERQQ |
- Opcode::VSCATTERDPS |
- Opcode::VSCATTERDPD |
- Opcode::VSCATTERQPS |
- Opcode::VSCATTERQPD |
- Opcode::VPSCATTERDD |
- Opcode::VPSCATTERDQ |
- Opcode::VPSCATTERQD |
- Opcode::VPSCATTERQQ |
- Opcode::VSCATTERPF0DPD |
- Opcode::VSCATTERPF0DPS |
- Opcode::VSCATTERPF0QPD |
- Opcode::VSCATTERPF0QPS |
- Opcode::VSCATTERPF1DPD |
- Opcode::VSCATTERPF1DPS |
- Opcode::VSCATTERPF1QPD |
- Opcode::VSCATTERPF1QPS |
- Opcode::VINSERTF128 |
- Opcode::VINSERTI128 |
- Opcode::VINSERTPS |
- Opcode::INSERTPS |
- Opcode::VEXTRACTF32X4 |
- Opcode::VEXTRACTF64X2 |
- Opcode::VEXTRACTF64X4 |
- Opcode::VEXTRACTI32X4 |
- Opcode::VEXTRACTI64X2 |
- Opcode::VEXTRACTI64X4 |
- Opcode::VINSERTF32X4 |
- Opcode::VINSERTF64X2 |
- Opcode::VINSERTF64X4 |
- Opcode::VINSERTI64X2 |
- Opcode::VINSERTI64X4 |
- Opcode::VSHUFF32X4 |
- Opcode::VSHUFF64X2 |
- Opcode::VSHUFI32X4 |
- Opcode::VSHUFI64X2 |
- Opcode::VMASKMOVDQU |
- Opcode::VMASKMOVPD |
- Opcode::VMASKMOVPS |
- Opcode::VMOVAPD |
- Opcode::VMOVAPS |
- Opcode::VMOVD |
- Opcode::VMOVDQA |
- Opcode::VMOVDQU |
- Opcode::VMOVHLPS |
- Opcode::VMOVHPD |
- Opcode::VMOVHPS |
- Opcode::VMOVLHPS |
- Opcode::VMOVLPD |
- Opcode::VMOVLPS |
- Opcode::VMOVMSKPD |
- Opcode::VMOVMSKPS |
- Opcode::VMOVNTDQ |
- Opcode::VMOVNTDQA |
- Opcode::VMOVNTPD |
- Opcode::VMOVNTPS |
- Opcode::MOVDIR64B |
- Opcode::MOVDIRI |
- Opcode::MOVNTDQA |
- Opcode::VMOVQ |
- Opcode::VMOVSHDUP |
- Opcode::VMOVSLDUP |
- Opcode::VMOVUPD |
- Opcode::VMOVUPS |
- Opcode::VMOVSD |
- Opcode::VMOVSS |
- Opcode::VMOVDQA32 |
- Opcode::VMOVDQA64 |
- Opcode::VMOVDQU32 |
- Opcode::VMOVDQU64 |
- Opcode::VPMOVM2B |
- Opcode::VPMOVM2W |
- Opcode::VPMOVB2M |
- Opcode::VPMOVW2M |
- Opcode::VPMOVSWB |
- Opcode::VPMOVUSWB |
- Opcode::VPMOVSQB |
- Opcode::VPMOVUSQB |
- Opcode::VPMOVSQW |
- Opcode::VPMOVUSQW |
- Opcode::VPMOVSQD |
- Opcode::VPMOVUSQD |
- Opcode::VPMOVSDB |
- Opcode::VPMOVUSDB |
- Opcode::VPMOVSDW |
- Opcode::VPMOVUSDW |
- Opcode::VPMOVM2D |
- Opcode::VPMOVM2Q |
- Opcode::VPMOVB2D |
- Opcode::VPMOVQ2M |
- Opcode::VMOVDQU8 |
- Opcode::VMOVDQU16 |
-
- Opcode::VPBLENDD |
- Opcode::VPBLENDVB |
- Opcode::VPBLENDW |
- Opcode::VPBROADCASTB |
- Opcode::VPBROADCASTD |
- Opcode::VPBROADCASTQ |
- Opcode::VPBROADCASTW |
- Opcode::VPGATHERDD |
- Opcode::VPGATHERDQ |
- Opcode::VPGATHERQD |
- Opcode::VPGATHERQQ |
- Opcode::VPCLMULQDQ |
- Opcode::VPMOVMSKB |
- Opcode::VPMOVSXBD |
- Opcode::VPMOVSXBQ |
- Opcode::VPMOVSXBW |
- Opcode::VPMOVSXDQ |
- Opcode::VPMOVSXWD |
- Opcode::VPMOVSXWQ |
- Opcode::VPMOVZXBD |
- Opcode::VPMOVZXBQ |
- Opcode::VPMOVZXBW |
- Opcode::VPMOVZXDQ |
- Opcode::VPMOVZXWD |
- Opcode::VPMOVZXWQ |
- Opcode::PMOVSXBD |
- Opcode::PMOVSXBQ |
- Opcode::PMOVSXBW |
- Opcode::PMOVSXDQ |
- Opcode::PMOVSXWD |
- Opcode::PMOVSXWQ |
- Opcode::PMOVZXBD |
- Opcode::PMOVZXBQ |
- Opcode::PMOVZXBW |
- Opcode::PMOVZXDQ |
- Opcode::PMOVZXWD |
- Opcode::PMOVZXWQ |
- Opcode::KUNPCKBW |
- Opcode::KUNPCKWD |
- Opcode::KUNPCKDQ |
- Opcode::VUNPCKHPD |
- Opcode::VUNPCKHPS |
- Opcode::VUNPCKLPD |
- Opcode::VUNPCKLPS |
- Opcode::VPUNPCKHBW |
- Opcode::VPUNPCKHDQ |
- Opcode::VPUNPCKHQDQ |
- Opcode::VPUNPCKHWD |
- Opcode::VPUNPCKLBW |
- Opcode::VPUNPCKLDQ |
- Opcode::VPUNPCKLQDQ |
- Opcode::VPUNPCKLWD |
- Opcode::VSHUFPD |
- Opcode::VSHUFPS |
- Opcode::VPACKSSDW |
- Opcode::VPACKUSDW |
- Opcode::PACKUSDW |
- Opcode::VPACKSSWB |
- Opcode::VPACKUSWB |
- Opcode::VALIGND |
- Opcode::VALIGNQ |
- Opcode::VPALIGNR |
- Opcode::PALIGNR |
- Opcode::VPERM2F128 |
- Opcode::VPERM2I128 |
- Opcode::VPERMD |
- Opcode::VPERMILPD |
- Opcode::VPERMILPS |
- Opcode::VPERMPD |
- Opcode::VPERMPS |
- Opcode::VPERMQ |
- Opcode::VPERMI2D |
- Opcode::VPERMI2Q |
- Opcode::VPERMI2PD |
- Opcode::VPERMI2PS |
- Opcode::VPERMT2D |
- Opcode::VPERMT2Q |
- Opcode::VPERMT2PD |
- Opcode::VPERMT2PS |
- Opcode::VPERMI2B |
- Opcode::VPERMI2W |
- Opcode::VPERMW |
- Opcode::VPEXTRB |
- Opcode::VPEXTRD |
- Opcode::VPEXTRQ |
- Opcode::VPEXTRW |
- Opcode::PEXTRB |
- Opcode::PEXTRD |
- Opcode::PEXTRQ |
- Opcode::EXTRQ |
- Opcode::PINSRB |
- Opcode::PINSRD |
- Opcode::PINSRQ |
- Opcode::INSERTQ |
- Opcode::VPINSRB |
- Opcode::VPINSRD |
- Opcode::VPINSRQ |
- Opcode::VPINSRW |
- Opcode::VPMASKMOVD |
- Opcode::VPMASKMOVQ |
- Opcode::VCOMPRESSD |
- Opcode::VCOMPRESSQ |
- Opcode::VCOMPRESSPD |
- Opcode::VCOMPRESSPS |
- Opcode::VPCOMPRESSQ |
- Opcode::VPCOMPRESSD |
- Opcode::VEXPANDPD |
- Opcode::VEXPANDPS |
- Opcode::VPSHUFB |
- Opcode::VPSHUFD |
- Opcode::VPHMINPOSUW |
- Opcode::PHMINPOSUW |
- Opcode::VZEROUPPER |
- Opcode::VZEROALL |
- Opcode::VFIXUPIMMPD |
- Opcode::VFIXUPIMMPS |
- Opcode::VFIXUPIMMSD |
- Opcode::VFIXUPIMMSS |
- Opcode::VREDUCEPD |
- Opcode::VREDUCEPS |
- Opcode::VREDUCESD |
- Opcode::VREDUCESS |
- Opcode::VGETEXPPD |
- Opcode::VGETEXPPS |
- Opcode::VGETEXPSD |
- Opcode::VGETEXPSS |
- Opcode::VGETMANTPD |
- Opcode::VGETMANTPS |
- Opcode::VGETMANTSD |
- Opcode::VGETMANTSS |
- Opcode::VLDDQU |
- Opcode::BSWAP |
- Opcode::CVTDQ2PD |
- Opcode::CVTDQ2PS |
- Opcode::CVTPS2DQ |
- Opcode::CVTPD2DQ |
- Opcode::CVTPI2PS |
- Opcode::CVTPI2PD |
- Opcode::CVTPS2PD |
- Opcode::CVTPD2PS |
- Opcode::CVTPS2PI |
- Opcode::CVTPD2PI |
- Opcode::CVTSD2SI |
- Opcode::CVTSD2SS |
- Opcode::CVTSI2SD |
- Opcode::CVTSI2SS |
- Opcode::CVTSS2SD |
- Opcode::CVTSS2SI |
- Opcode::CVTTPD2DQ |
- Opcode::CVTTPS2DQ |
- Opcode::CVTTPS2PI |
- Opcode::CVTTPD2PI |
- Opcode::CVTTSD2SI |
- Opcode::CVTTSS2SI |
- Opcode::MASKMOVQ |
- Opcode::MASKMOVDQU |
- Opcode::MOVAPS |
- Opcode::MOVAPD |
- Opcode::MOVD |
- Opcode::MOVHPS |
- Opcode::MOVHPD |
- Opcode::MOVHLPS |
- Opcode::MOVLPS |
- Opcode::MOVLPD |
- Opcode::MOVLHPS |
- Opcode::MOVMSKPS |
- Opcode::MOVMSKPD |
- Opcode::MOVNTI |
- Opcode::MOVNTPS |
- Opcode::MOVNTPD |
- Opcode::MOVNTSS |
- Opcode::MOVNTSD |
- Opcode::MOVNTQ |
- Opcode::MOVNTDQ |
- Opcode::MOVSD |
- Opcode::MOVSS |
- Opcode::MOVUPD |
- Opcode::PSHUFHW |
- Opcode::PSHUFLW |
- Opcode::PUNPCKHBW |
- Opcode::PUNPCKHDQ |
- Opcode::PUNPCKHWD |
- Opcode::PUNPCKLBW |
- Opcode::PUNPCKLDQ |
- Opcode::PUNPCKLWD |
- Opcode::PUNPCKLQDQ |
- Opcode::PUNPCKHQDQ |
- Opcode::PACKSSDW |
- Opcode::PACKSSWB |
- Opcode::PACKUSWB |
- Opcode::UNPCKHPS |
- Opcode::UNPCKHPD |
- Opcode::UNPCKLPS |
- Opcode::UNPCKLPD |
- Opcode::SHUFPD |
- Opcode::SHUFPS |
- Opcode::PMOVMSKB |
- Opcode::KMOVB |
- Opcode::KMOVW |
- Opcode::KMOVD |
- Opcode::KMOVQ |
- Opcode::BNDMOV |
- Opcode::LDDQU |
- Opcode::CMC |
- Opcode::CLC |
- Opcode::CLI |
- Opcode::CLD |
- Opcode::STC |
- Opcode::STI |
- Opcode::STD |
- Opcode::CBW |
- Opcode::CWDE |
- Opcode::CDQE |
- Opcode::CWD |
- Opcode::CDQ |
- Opcode::CQO |
- Opcode::MOVDDUP |
- Opcode::MOVSLDUP |
- Opcode::MOVDQ2Q |
- Opcode::MOVDQU |
- Opcode::MOVDQA |
- Opcode::MOVQ |
- Opcode::MOVQ2DQ |
- Opcode::MOVSHDUP |
- Opcode::MOVUPS |
- Opcode::PEXTRW |
- Opcode::PINSRW |
- Opcode::MOV |
- Opcode::MOVBE |
- Opcode::LODS |
- Opcode::STOS |
- Opcode::LAHF |
- Opcode::SAHF |
- Opcode::MOVS |
- Opcode::INS |
- Opcode::IN |
- Opcode::OUTS |
- Opcode::OUT |
- Opcode::MOVZX |
- Opcode::MOVSX |
- Opcode::MOVSXD |
- Opcode::FILD |
- Opcode::FBLD |
- Opcode::FBSTP |
- Opcode::FIST |
- Opcode::FISTP |
- Opcode::FISTTP |
- Opcode::FLD |
- Opcode::FLD1 |
- Opcode::FLDCW |
- Opcode::FLDENV |
- Opcode::FLDL2E |
- Opcode::FLDL2T |
- Opcode::FLDLG2 |
- Opcode::FLDLN2 |
- Opcode::FLDPI |
- Opcode::FLDZ |
- Opcode::FST |
- Opcode::FSTP |
- Opcode::FSTPNCE |
- Opcode::FNSAVE |
- Opcode::FNSTCW |
- Opcode::FNSTENV |
- Opcode::FNSTOR |
- Opcode::FNSTSW |
- Opcode::FRSTOR |
- Opcode::FXCH |
- Opcode::XCHG |
- Opcode::XLAT |
- Opcode::CMOVA |
- Opcode::CMOVB |
- Opcode::CMOVG |
- Opcode::CMOVGE |
- Opcode::CMOVL |
- Opcode::CMOVLE |
- Opcode::CMOVNA |
- Opcode::CMOVNB |
- Opcode::CMOVNO |
- Opcode::CMOVNP |
- Opcode::CMOVNS |
- Opcode::CMOVNZ |
- Opcode::CMOVO |
- Opcode::CMOVP |
- Opcode::CMOVS |
- Opcode::CMOVZ |
- Opcode::FCMOVB |
- Opcode::FCMOVBE |
- Opcode::FCMOVE |
- Opcode::FCMOVNB |
- Opcode::FCMOVNBE |
- Opcode::FCMOVNE |
- Opcode::FCMOVNU |
- Opcode::FCMOVU |
- Opcode::SALC |
- Opcode::SETO |
- Opcode::SETNO |
- Opcode::SETB |
- Opcode::SETAE |
- Opcode::SETZ |
- Opcode::SETNZ |
- Opcode::SETBE |
- Opcode::SETA |
- Opcode::SETS |
- Opcode::SETNS |
- Opcode::SETP |
- Opcode::SETNP |
- Opcode::SETL |
- Opcode::SETGE |
- Opcode::SETLE |
- Opcode::SETG => { write!(out, "{}", colors.data_op(self)) }
-
- Opcode::VCOMISD |
- Opcode::VCOMISS |
- Opcode::VUCOMISD |
- Opcode::VUCOMISS |
- Opcode::KORTESTB |
- Opcode::KTESTB |
- Opcode::KORTESTW |
- Opcode::KTESTW |
- Opcode::KORTESTD |
- Opcode::KTESTD |
- Opcode::KORTESTQ |
- Opcode::KTESTQ |
- Opcode::VPTESTNMD |
- Opcode::VPTESTNMQ |
- Opcode::VPTERNLOGD |
- Opcode::VPTERNLOGQ |
- Opcode::VPTESTMD |
- Opcode::VPTESTMQ |
- Opcode::VPTESTNMB |
- Opcode::VPTESTNMW |
- Opcode::VPTESTMB |
- Opcode::VPTESTMW |
- Opcode::VPCMPD |
- Opcode::VPCMPUD |
- Opcode::VPCMPQ |
- Opcode::VPCMPUQ |
- Opcode::VPCMPB |
- Opcode::VPCMPUB |
- Opcode::VPCMPW |
- Opcode::VPCMPUW |
- Opcode::VCMPPD |
- Opcode::VCMPPS |
- Opcode::VCMPSD |
- Opcode::VCMPSS |
- Opcode::VMAXPD |
- Opcode::VMAXPS |
- Opcode::VMAXSD |
- Opcode::VMAXSS |
- Opcode::VPMAXSQ |
- Opcode::VPMAXUQ |
- Opcode::VPMINSQ |
- Opcode::VPMINUQ |
- Opcode::VMINPD |
- Opcode::VMINPS |
- Opcode::VMINSD |
- Opcode::VMINSS |
- Opcode::VPCMPEQB |
- Opcode::VPCMPEQD |
- Opcode::VPCMPEQQ |
- Opcode::VPCMPEQW |
- Opcode::VPCMPGTB |
- Opcode::VPCMPGTD |
- Opcode::VPCMPGTQ |
- Opcode::VPCMPGTW |
- Opcode::VPCMPESTRI |
- Opcode::VPCMPESTRM |
- Opcode::VPCMPISTRI |
- Opcode::VPCMPISTRM |
- Opcode::VPMAXSB |
- Opcode::VPMAXSD |
- Opcode::VPMAXSW |
- Opcode::VPMAXUB |
- Opcode::VPMAXUW |
- Opcode::VPMAXUD |
- Opcode::VPMINSB |
- Opcode::VPMINSW |
- Opcode::VPMINSD |
- Opcode::VPMINUB |
- Opcode::VPMINUW |
- Opcode::VPMINUD |
- Opcode::VFPCLASSPD |
- Opcode::VFPCLASSPS |
- Opcode::VFPCLASSSD |
- Opcode::VFPCLASSSS |
- Opcode::VRANGEPD |
- Opcode::VRANGEPS |
- Opcode::VRANGESD |
- Opcode::VRANGESS |
- Opcode::VPCONFLICTD |
- Opcode::VPCONFLICTQ |
- Opcode::VPTEST |
- Opcode::VTESTPD |
- Opcode::VTESTPS |
- Opcode::PCMPEQB |
- Opcode::PCMPEQD |
- Opcode::PCMPEQQ |
- Opcode::PCMPEQW |
- Opcode::PCMPESTRI |
- Opcode::PCMPESTRM |
- Opcode::PCMPGTB |
- Opcode::PCMPGTD |
- Opcode::PCMPGTQ |
- Opcode::PCMPGTW |
- Opcode::PCMPISTRI |
- Opcode::PCMPISTRM |
- Opcode::PTEST |
- Opcode::MAXPD |
- Opcode::MAXPS |
- Opcode::MAXSD |
- Opcode::MAXSS |
- Opcode::MINPD |
- Opcode::MINPS |
- Opcode::MINSD |
- Opcode::MINSS |
- Opcode::PMAXSB |
- Opcode::PMAXSD |
- Opcode::PMAXSW |
- Opcode::PMAXUB |
- Opcode::PMAXUD |
- Opcode::PMAXUW |
- Opcode::PMINSB |
- Opcode::PMINSD |
- Opcode::PMINSW |
- Opcode::PMINUB |
- Opcode::PMINUD |
- Opcode::PMINUW |
- Opcode::PFCMPGE |
- Opcode::PFMIN |
- Opcode::PFCMPGT |
- Opcode::PFMAX |
- Opcode::PFCMPEQ |
- Opcode::CMPS |
- Opcode::SCAS |
- Opcode::TEST |
- Opcode::FTST |
- Opcode::FXAM |
- Opcode::FUCOM |
- Opcode::FUCOMI |
- Opcode::FUCOMIP |
- Opcode::FUCOMP |
- Opcode::FUCOMPP |
- Opcode::FCOM |
- Opcode::FCOMI |
- Opcode::FCOMIP |
- Opcode::FCOMP |
- Opcode::FCOMPP |
- Opcode::FICOM |
- Opcode::FICOMP |
- Opcode::CMPSD |
- Opcode::CMPSS |
- Opcode::CMP |
- Opcode::CMPPS |
- Opcode::CMPPD |
- Opcode::CMPXCHG8B |
- Opcode::CMPXCHG16B |
- Opcode::CMPXCHG => { write!(out, "{}", colors.comparison_op(self)) }
-
- Opcode::WRMSR |
- Opcode::RDMSR |
- Opcode::RDTSC |
- Opcode::RDPMC |
- Opcode::RDPID |
- Opcode::RDFSBASE |
- Opcode::RDGSBASE |
- Opcode::WRFSBASE |
- Opcode::WRGSBASE |
- Opcode::FXSAVE |
- Opcode::FXRSTOR |
- Opcode::LDMXCSR |
- Opcode::STMXCSR |
- Opcode::VLDMXCSR |
- Opcode::VSTMXCSR |
- Opcode::XSAVE |
- Opcode::XSAVEC |
- Opcode::XSAVES |
- Opcode::XSAVEC64 |
- Opcode::XSAVES64 |
- Opcode::XRSTOR |
- Opcode::XRSTORS |
- Opcode::XRSTORS64 |
- Opcode::XSAVEOPT |
- Opcode::LFENCE |
- Opcode::MFENCE |
- Opcode::SFENCE |
- Opcode::CLFLUSH |
- Opcode::CLFLUSHOPT |
- Opcode::CLWB |
- Opcode::LDS |
- Opcode::LES |
- Opcode::SGDT |
- Opcode::SIDT |
- Opcode::LGDT |
- Opcode::LIDT |
- Opcode::SMSW |
- Opcode::LMSW |
- Opcode::SWAPGS |
- Opcode::RDTSCP |
- Opcode::INVEPT |
- Opcode::INVVPID |
- Opcode::INVPCID |
- Opcode::INVLPG |
- Opcode::INVLPGA |
- Opcode::INVLPGB |
- Opcode::TLBSYNC |
- Opcode::PSMASH |
- Opcode::PVALIDATE |
- Opcode::RMPADJUST |
- Opcode::RMPUPDATE |
- Opcode::CPUID |
- Opcode::WBINVD |
- Opcode::INVD |
- Opcode::SYSRET |
- Opcode::CLTS |
- Opcode::SYSCALL |
- Opcode::TDCALL |
- Opcode::SEAMRET |
- Opcode::SEAMOPS |
- Opcode::SEAMCALL |
- Opcode::TPAUSE |
- Opcode::UMONITOR |
- Opcode::UMWAIT |
- Opcode::LSL |
- Opcode::SLDT |
- Opcode::STR |
- Opcode::LLDT |
- Opcode::LTR |
- Opcode::VERR |
- Opcode::VERW |
- Opcode::JMPE |
- Opcode::EMMS |
- Opcode::FEMMS |
- Opcode::GETSEC |
- Opcode::LFS |
- Opcode::LGS |
- Opcode::LSS |
- Opcode::RSM |
- Opcode::SYSENTER |
- Opcode::SYSEXIT |
- Opcode::VMREAD |
- Opcode::VMWRITE |
- Opcode::VMCLEAR |
- Opcode::VMPTRLD |
- Opcode::VMPTRST |
- Opcode::VMXON |
- Opcode::VMCALL |
- Opcode::VMLAUNCH |
- Opcode::VMRESUME |
- Opcode::VMLOAD |
- Opcode::VMMCALL |
- Opcode::VMSAVE |
- Opcode::VMRUN |
- Opcode::VMXOFF |
- Opcode::PCONFIG |
- Opcode::MONITOR |
- Opcode::MWAIT |
- Opcode::MONITORX |
- Opcode::MWAITX |
- Opcode::SKINIT |
- Opcode::CLGI |
- Opcode::STGI |
- Opcode::CLAC |
- Opcode::STAC |
- Opcode::ENCLS |
- Opcode::ENCLV |
- Opcode::XGETBV |
- Opcode::XSETBV |
- Opcode::VMFUNC |
- Opcode::XEND |
- Opcode::XTEST |
- Opcode::XABORT |
- Opcode::XBEGIN |
- Opcode::ENCLU |
- Opcode::RDPKRU |
- Opcode::WRPKRU |
- Opcode::RDPRU |
- Opcode::CLZERO |
- Opcode::ENQCMD |
- Opcode::ENQCMDS |
- Opcode::PTWRITE |
- Opcode::UIRET |
- Opcode::TESTUI |
- Opcode::CLUI |
- Opcode::STUI |
- Opcode::SENDUIPI |
- Opcode::XSUSLDTRK |
- Opcode::XRESLDTRK |
- Opcode::BOUND |
- Opcode::ARPL |
- Opcode::BNDMK |
- Opcode::BNDCL |
- Opcode::BNDCU |
- Opcode::BNDCN |
- Opcode::BNDLDX |
- Opcode::BNDSTX |
- Opcode::LAR => { write!(out, "{}", colors.platform_op(self)) }
-
- Opcode::CRC32 |
- Opcode::RDSEED |
- Opcode::RDRAND |
- Opcode::SHA1RNDS4 |
- Opcode::SHA1NEXTE |
- Opcode::SHA1MSG1 |
- Opcode::SHA1MSG2 |
- Opcode::SHA256RNDS2 |
- Opcode::SHA256MSG1 |
- Opcode::SHA256MSG2 |
- Opcode::FFREE |
- Opcode::FFREEP |
- Opcode::FDECSTP |
- Opcode::FINCSTP |
- Opcode::GF2P8MULB |
- Opcode::GF2P8AFFINEQB |
- Opcode::GF2P8AFFINEINVQB |
- Opcode::AESDEC128KL |
- Opcode::AESDEC256KL |
- Opcode::AESDECWIDE128KL |
- Opcode::AESDECWIDE256KL |
- Opcode::AESENC128KL |
- Opcode::AESENC256KL |
- Opcode::AESENCWIDE128KL |
- Opcode::AESENCWIDE256KL |
- Opcode::ENCODEKEY128 |
- Opcode::ENCODEKEY256 |
- Opcode::LOADIWKEY |
- Opcode::HRESET |
- Opcode::WRUSS |
- Opcode::WRSS |
- Opcode::INCSSP |
- Opcode::SAVEPREVSSP |
- Opcode::SETSSBSY |
- Opcode::CLRSSBSY |
- Opcode::RSTORSSP |
- Opcode::ENDBR64 |
- Opcode::ENDBR32 |
- Opcode::AESDEC |
- Opcode::AESDECLAST |
- Opcode::AESENC |
- Opcode::AESENCLAST |
- Opcode::AESIMC |
- Opcode::AESKEYGENASSIST |
- Opcode::VAESDEC |
- Opcode::VAESDECLAST |
- Opcode::VAESENC |
- Opcode::VAESENCLAST |
- Opcode::VAESIMC |
- Opcode::VAESKEYGENASSIST => { write!(out, "{}", colors.misc_op(self)) }
-
- Opcode::UD0 |
- Opcode::UD1 |
- Opcode::UD2 |
- Opcode::Invalid => { write!(out, "{}", colors.invalid_op(self)) }
- }
- }
-}
-
impl fmt::Display for Instruction {
fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
self.display_with(DisplayStyle::Intel).colorize(&NoColors, fmt)